Créer des flux RSS sur Google Search via Google Custom Search Engine

Cet article s’inspire d’un tutoriel très précis quoiqu’un peu technique réalisé par Amit Agarwal. Le principe consiste à utiliser les services Google Developers Console et Google Custom Search pour disposer d’un flux RSS qui proposera des résultats très proches d’une requête google, avec plus d’exhaustivité qu’un google custom search engine

Il faut donc d’abord créer un Google Custom Search Engine (CSE) pour pouvoir ensuite créer un flux RSS à partir de celui-ci. Le Google Custom Search Engine est un outil proposé par Google qui permet d’effectuer des requêtes sur des sources et/ou types de fichiers spécifiques et pas sur l’ensemble de Google. La plupart des sites internet utilise un Google CSE comme moteur de recherche pour leurs visiteurs (en indiquant à Google de ne chercher que sur leur site donc).

Créer un Google Search Engine qui s’appuie sur les recherches Google

Le Google Search Engine a pour objet de permettre d’utiliser le moteur Google pour cibler des recherches sur certains sites. Il est notamment souvent utilisé comme moteur de recherche interne de sites worpdress par exemple.

En revanche, par défaut, les résultats seront donc limités. Il est néanmoins possible de les étendre via l’option « chercher sur l’ensemble du web » :

2016-07-21_1322

Une fois le moteur de recherche créé, on peut commencer à préparer le flux RSS de la recherche CSE.

Création du flux RSS

L’URL pour créer un flux RSS à partir d’une requête aura toujours la même structure : https://www.googleapis.com/customsearch/v1?alt=atom&cx=xxx:yyy&key=abc&q=query :

  • xxx:yyy correspond à l’identifiant d’un moteur de recherche Google Custom Search. On peut l’obtenir soit en allant dans « Modifier le moteur de recherche », « Configuration », « détails » :

2016-07-21_1325

 

Soit à partir de l’URL publique de votre moteur de recherche CSE :

2016-07-21_1326_001

 

  • abc est une clé API que l’on obtient via la Google Developer Console et qui permet de demander à Google d’accéder aux données du CSE. Attention à bien suivre les étapes : après créer un nouveau projet, il faut créer une custom search API

2016-07-21_1327

 

Et ensuite cliquer sur « Enable » : si vous oubliez cette étape, le flux ne fonctionnera pas ! A noter que chaque API ne dispose de base que de 100 requêtes possibles par jour donc il faut éviter un rafraîchissement trop régulier – mais on peut créer une API par moteur de recherche :

2016-07-21_1328

 

Il faut ensuite aller dans « credentials » (menu à gauche) pour créer un accès à la clé API :

2016-07-21_1329

 

Attention : choisir une « browser key » sans restrictions pour que le flux RSS fonctionne. On obtient ainsi la clé API à utiliser :

2016-07-21_1329_001

 

  • « » correspond à la dernière partie de la requête https://www.googleapis.com/customsearch/v1?alt=atom&cx=xxx:yyy&key=abc&q=query

On peut adapter une requête pour le flux RSS en suivant la liste des paramètres de l’API du custom search engine. Par exemple, si je veux les résultats des deux derniers jours sur les PDF contenant le terme « Total » :

https://www.googleapis.com/customsearch/v1?alt=atom&cx=xxx:yyy&key=abc&q=Total&fileType=pdf&dateRestrict=d2

Il faut donc toujours indiquer & entre deux éléments d’une requête.

Quelques exemples d’opérateurs :

fileType= pour demander les résultats d’un type de fichier précis ;

dateRestrict=”xx” pour avoir les résultats des derniers jours “dx”, de la dernière semaine “wx”, du mois “mx”, de l’année “mx” où X représente le nombre de mois, jours, semaines …

 orTerms=, exactTerms=excludeTerms= comme leur nom l’indique : OR”XX”, “XX”, NOT”XX” – pour obtenir AND : “XX”+“XX

linkSite= pour chercher les résultats sur une URL précise, relatedSite= pour inclure les liens du site dans la recherche

sort=date pour afficher les résultats du plus récent au moins récent

hl=fr pour spécifier que votre interface est en langue française – cela permet d’améliorer la qualité des résultats a priori

Attention à la casse des requêtes, sinon elles ne sont pas prises en compte !

Paramétrer le flux de recherche

Il suffit ensuite d’ajouter le flux dans un lecteur de flux RSS pour y avoir accès. Attention néanmoins : Google donne une limite de 100 requêtes par API et par jour. Mieux vaut donc éviter de rafraichir toutes les 5 minutes et trouver un bon compromis.

A noter que la date affichée pour les news du flux RSS est toujours le 18 janvier 1970. Néanmoins, avec sort=date on obtient les résultats les plus récents quand même :

2016-07-21_1350

Admin M2 IESC