Google – personnaliser un moteur de recherche google pour votre site
Pour parvenir à se servir de la technologie du moteur Google pour son propre moteur de recherche, il va falloir vous livrer un peu plus encore à l’ogre de “Mountain View”. Mais n’est-ce pas déjà le cas ? En effet, si vous êtes déjà un adepte de Gmail, Google sitemap, Google webmaster tools, Google adsense, Google analytics…etc. Il ne vous reste encore qu’un seul effort à faire pour finaliser votre “Google life” alors pourquoi ne pas franchir une étape supplémentaire en confiant votre moteur de recherche à ce qui est à l’origine de la “success story” de Google, le technologie de recherche. C’est trivial, en effet mais Google reste avant tout un moteur de recherche et vous pouvez, auprès de leurs services, externaliser totalement la recherche de votre site.
Mettre du google dans votre moteur
Pour cela, il vous faut un compte Google. C’est sans doute chose faite si vous êtes parvenu(e) sur cette page et/ou que vous fréquenté(e) même occasionnellement ce blog sinon faites-le Pour mémoire, quelques-uns des articles qui détaillent ce que le sésame d’un compte Google vous autorisera :
- Google – Gérer son nom domaine avec Google Apps
http://social.hecube.net/blog/2009/05/04/google-gerer-son-nom-domaine-avec-google-apps/ - Google AdSense – créer et gérer des annonces et des publicités
http://social.hecube.net/blog/2009/04/25/google-adsense-creer-et-gerer-des-annonces-et-des-publicites/ - Palette Google AdSense – Personnaliser vos annonces & publicités
http://social.hecube.net/blog/2009/04/24/palette-google-adsense-personnaliser-vos-annonces-publicites/ - Créer des filtres avancées avec votre compte Google Analytics
http://social.hecube.net/blog/2009/03/20/creer-des-filtres-avancees-avec-votre-compte-google-analytics/
Faites votre moteur vous-même !
Le plus difficile est bien de trouver la page où vous pourrez vous connecter : http://www.google.com/coop/manage/cse/
une fois ce problème résolu, il ne vous reste plus qu’à suivre les instructions.
1. créer son premier moteur en 2 étapes. Sans le test de page de résultats, la promesse est vraie
2. Les paramètres du moteur
L’écran complété des paramètres du moteur
Vous devez complétez la valeur Sites à explorer :
www.monsite.com/* que je remplace habilement par www.hecube.net/* et donc le moteur va crawler toutes les pages concernant ce domaine uniquement dans notre exemple.
3. l’écran de test du moteur
Un test de recherche sur hecube
sur mon_moteur
désigné par hecube avec l’aide de Google !!!
Le code délivré par google
Le code en vrai
<form action="http://www.google.com/cse" id="cse-search-box"> <div> <input type="hidden" name="cx" value="001162007975234339020:0ii-7lvddua" /> <input type="hidden" name="ie" value="UTF-8" /> <input type="text" name="q" size="31" /> <input type="submit" name="sa" value="Rechercher" /> </div> </form> <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript">google.load("elements", "1", {packages: "transliteration"}); </script> <script type="text/javascript" src="http://www.google.com/coop/cse/t13n?form=cse-search-box&t13n_langs=fr"> </script> <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse-search-box&lang=fr"> </script> |
Vous pouvez spécifier autant de moteurs que vous le souhaitez sur ce même principe de création.
NDLR : Vous qui comme moi pensiez naïvement que Google était totalement gratuit ! Eh bien, nous avons été trompés :):) Qu’on se rassure ici G glisse son offre commerciale après vous avez rendu addictif au service ! De la manière la plus subtile, ils ont compris en finesse comment faire payer les externalités négatives au consommateur que vous êtes. Vous souhaitez une page de résultat sans liens sponsorisés, avec plus de 64 résultats, il faudra donc payer. Rassurez-vous bientôt vous devrez payer pour un air ou une eau débarrassé des pollutions insidieuses (un peu comme la pub sur les pages de résultats) au risque de se rendre durablement malade. Comme l’eau ou l’air, G pourrait devenir une ressource rare, on est pas loin de payer pour la qualité des résultats eux-mêmes, ce qui pourrait se résumer par cette proposition en donnant dans la devise simpliste d’une avenir possible si toi pas payer, toi avoir des pages de m…, pleines d’infomerciales.
Au sujet de l’API Google, je vous invite à voir cette vidéo un peu surréaliste, sur les explications de Mark Lucovsky en charge de l’API Ajax de Google.
“Google AJAX APIs go RESTful”
Le dépliant “ajax” de Google sur les vertus d’un moteur “NOPUB”
Les fameuses limitations de l’API Google. Gratuité vs Payant
Éditions de la Recherche personnalisée Nous proposons la Recherche personnalisée Google en deux versions : * L'édition standard vous offre une expérience de recherche sur mesure grâce à la technologie Google. Vous pouvez également personnaliser l'apparence de votre moteur de recherche et l'intégrer à votre site à l'aide d'un iframe. Vous devez afficher des publicités en regard des résultats de recherche, sauf si vous créez votre moteur de recherche pour une organisation à but non lucratif, une université ou un établissement public. Le cas échéant, vous pouvez désactiver les publicités. Vous pouvez gagner de l'argent grâce à ces publicités à l'aide du programme AdSense pour les recherches. * Édition Entreprise : à partir de 100 $ USD par an, avec options supplémentaires disponibles. Une API XML vous garantit une assistance et des options de personnalisation renforcées pour vos résultats de recherche. En outre, vous avez l'assurance qu'aucune annonce ne s'affiche en regard des résultats de recherche. |
Les valeurs de votre moteur perso… Google
Le code mis à disposition pour Google de notre moteur de recherche mon_moteur
. La valeur cx
est une des plus importantes 001162007975234339020:0ii-7lvddua
. Cette valeur atteste qu’il s’agit bien de votre moteur auprès de l’API Google.
cx?
This optional argument supplies the unique id for the Custom Search Engine that should be used for this request (e.g., cx=000455696194071821846:reviews).
Quelques-uns des arguments spécifiques pour paramètrer votre moteur de recherche Google
Tout ce qu’il faut savoir sur les valeurs du moteur…
extrait tiré de la documentation google
Argument | Description |
cx? | This optional argument supplies the unique id for the Custom Search Engine that should be used for this request (e.g., cx=000455696194071821846:reviews ). |
cref? | This optional argument supplies the url of a linked Custom Search Engine specification that should be used to satisfy this request (e.g., cref=http%3A%2F%2Fwww.google.com%2Fcse%2Fsamples%2Fvegetarian.xml ). |
safe? | This optional argument supplies the search safety level which may be one of:
|
lr? | This optional argument allows the caller to restrict the search to documents written in a particular language (e.g., lr=lang_ja ). This listcontains the permissible set of values. |
filter? New! | This optional argument controls turning on or off the duplicate content filter:
|
Le personnalisation des pages de résultat
Attention, comme la vidéo ci-dessus le laisse entendre, vous pouvez renforcer l’hégémonie de Google en lui déléguant la recherche sur votre site. La rubrique, “Flash and other Non-Javascript Environments ”
http://code.google.com/intl/fr/apis/ajaxsearch/documentation/reference.html#_intro_fonje
de Google API vous met sur la piste d’une “RESTful interface” qui offre une méthode GET et un format de réponse en JSON… Trop la classe !
En gros voilà le code qui va vous permettre de personnaliser totalement vos pages de résultats.
$url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=Paris%20Hilton"; // sendRequest // note how referer is set manually $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // curl_setopt($ch, CURLOPT_REFERER, "http://www.mysite.com/index.html"); $body = curl_exec($ch); curl_close($ch); // now, process the JSON string $json = json_decode($body); // now have some fun with the results... |
Vous pouvez accéder aux différents services de google que celle donnée dans l’exemple, notamment en changeant la “Base Url” pour faire des recherches sur les vidéos. C-dessous, la liste des services mis à disposition par Google.
- Web Search –
http://ajax.googleapis.com/ajax/services/search/web
- Local Search –
http://ajax.googleapis.com/ajax/services/search/local
- Video Search –
http://ajax.googleapis.com/ajax/services/search/video
- Blog Search –
http://ajax.googleapis.com/ajax/services/search/blogs
- News Search –
http://ajax.googleapis.com/ajax/services/search/news
- Book Search –
http://ajax.googleapis.com/ajax/services/search/books
- Image Search –
http://ajax.googleapis.com/ajax/services/search/images
- Patent Search –
http://ajax.googleapis.com/ajax/services/search/patent
A noter la recherche se fait sur Paris Hilton
, aussi populaire en son temps que Pamela Anderson
. Gare aux erreurs de frappe, qui vous font confondre avec Perez Hilton
puis Pervez Musharraf
.
Quelques informations sur l’API ajax de Google
- La bible, c’est à dire le “Developer’s Guide” de “Google AJAX Search API”
http://code.google.com/intl/fr/apis/ajaxsearch/documentation/ - Le site officiel de JSON
http://www.json.org/
Pour plus loin
- Voilà la page d’application de google en anglais sur comment constituer votre premier moteur de recherche personnalisé.
http://code.google.com/intl/en/apis/customsearch/docs/start.html - L’accès direct aux outils de Google
http://www.google.com/coop/manage/cse/ - La documentation concernant l’API google
http://code.google.com/intl/fr/apis/ajaxsearch/documentation/reference.html#_class_GwebSearch - Le rendu du moteur que nous venons de créer
mon_moteur
http://www.google.com/cse?oe=utf8&ie=utf8&source=uds&cx=001162007975234339020%3A0ii-7lvddua&start=0&hl=fr&q=hecube - Un rendu flex et Google API qui montre le potentiel des deux cotés, MS n’a qu’a bien se tenir.
Display Google’s search result within your flex application
http://flex.gunua.com/?p=115