Google rend open source la bibliothèque C++ qu'il utilise pour l'analyse des règles dans les fichiers robots.txt,
et formalise la spécification REP

Un fichier robots.txt indique aux robots d'exploration des moteurs de recherche les pages ou les fichiers qu'ils peuvent ou ne peuvent pas demander à votre site. Son objectif principal est d'éviter de surcharger votre site de demandes. Il ne sert pas à empêcher qu'une page Web figure dans les résultats de recherche Google. Pour empêcher qu'une page figure sur Google, vous devez utiliser des balises ou des directives noindex, ou la protéger par un mot de passe.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<!DOCTYPE html>
<html><head>
<meta name="robots" content="noindex" />
(…)
</head>
<body>(…)</body>
</html>
Dans l'exemple ci-dessus, la balise Meta pour les robots indique à la plupart des moteurs de recherche de ne pas afficher la page dans les résultats de recherche. La valeur de l'attribut name (robots) indique que l'instruction s'applique à tous les robots. Pour cibler un robot d'exploration spécifique, remplacez la valeur robots de l'attribut name par le nom du robot d'exploration en question. Les robots d'exploration spécifiques sont également connus sous le nom de user-agents. Un robot d'exploration utilise son user-agent pour demander à accéder à une page. Le nom du user-agent de notre robot d'exploration standard est Googlebot. Pour empêcher uniquement l'exploration de votre page par Googlebot, mettez à jour la balise comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
<meta name="googlebot" content="noindex" />
Cette balise indique désormais à Google (mais pas aux autres moteurs de recherche) de ne pas afficher cette page dans les résultats de la recherche sur le Web Google. Les attributs name et content ne sont pas sensibles à la casse.

Le fichier robots.txt sert principalement à gérer le trafic des robots d'exploration sur votre site et, parfois, à empêcher Google d'explorer une page, en fonction du type de fichier.

Nom : bot.png
Affichages : 5491
Taille : 60,5 Ko

L'analyseur robots.txt de Google est maintenant open source

Google a fait une annonce par le biais de son équipe Search Open Sourcing :

« Pendant 25 ans, le protocole d’exclusion des robots (REP - Robot Exclusion Protocol) n’était plus qu’une norme de facto. Cela a parfois des implications frustrantes. D'une part, pour les webmasters, cela signifiait une incertitude dans les cas critiques, comme lorsque leur éditeur de texte incluait des caractères de nomenclature dans leurs fichiers robots.txt. D'autre part, pour les développeurs de crawler et d'outils, cela apportait également de l'incertitude; Par exemple, comment doivent-ils gérer des fichiers robots.txt de plusieurs centaines de mégaoctets ?

« Aujourd'hui, nous avons annoncé que nous menions les efforts visant à faire du REP un standard Internet. Bien qu'il s'agisse d'une étape importante, cela représente un travail supplémentaire pour les développeurs qui analysent les fichiers robots.txt ».

L’équipe indique avoir rendu open source la bibliothèque C ++ utilisée par ses systèmes de production pour analyser et faire correspondre les règles dans les fichiers robots.txt: « cette bibliothèque existe depuis 20 ans et contient des morceaux de code écrits dans les années 90. Depuis lors, la bibliothèque a évolué; nous avons beaucoup appris sur la façon dont les webmasters écrivent les fichiers robots.txt et les cas critiques que nous devions couvrir, et avons ajouté ce que nous avons appris au fil des ans également au brouillon Internet lorsque cela avait du sens ».

L’équipe a également inclus un outil de test dans le package open source pour vous aider à tester quelques règles. Une fois construit, l’utilisation est très simple:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
robots_main <robots.txt content> <user_agent> <url>
Nom : txt.png
Affichages : 3071
Taille : 21,7 Ko

Formalisation de la spécification du protocole d'exclusion des robots

Dans un autre billet, d'autres membres de l'équipe rappellent que depuis 25 ans, le protocole REP est l’un des composants les plus élémentaires et les plus critiques du Web. Il permet aux propriétaires de sites Web d'exclure partiellement ou totalement les clients automatisés, par exemple les robots d'exploration de sites Web. En 1994, Martijn Koster (un webmaster lui-même) a créé la norme initiale après que les robots d'exploration aient submergé son site. Avec plus de contributions d'autres webmasters, le REP est né et a été adopté par les moteurs de recherche pour aider les propriétaires de sites Web à gérer plus facilement leurs ressources de serveur.

Cependant, ils notent que le REP n'a jamais été transformé en un standard Internet officiel, ce qui signifie que les développeurs ont interprété le protocole de manière quelque peu différente au fil des ans. Et depuis sa création, le REP n'a pas été mis à jour pour couvrir les cas critiques d'aujourd'hui. C'est un problème difficile pour les propriétaires de sites Web, car la norme ambiguë de facto rend difficile la rédaction correcte des règles.

« Nous voulions aider les propriétaires de sites Web et les développeurs à créer des expériences incroyables sur Internet au lieu de se préoccuper de la façon de contrôler les robots. Avec l'auteur du protocole, les webmasters et d'autres moteurs de recherche, nous avons documenté l'utilisation du REP sur le Web moderne et l'avons soumis à l'IETF.

« Le projet de REP proposé reflète plus de 20 ans d’expérience dans le monde réel, qui repose sur les règles de robots.txt, utilisées à la fois par Googlebot et d’autres grands robots, ainsi que par environ un demi-milliard de sites Web qui reposent sur REP. Ces contrôles précis permettent à l'éditeur de décider ce qu'il souhaite explorer sur son site et éventuellement montrer aux utilisateurs intéressés. Il ne modifie pas les règles créées en 1994, mais définit essentiellement tous les scénarios non définis pour l'analyse syntaxique et la correspondance de robots.txt, et les étend pour le Web moderne ».

L'équipe évoque notamment que :
  1. Tout protocole de transfert basé sur une URI peut utiliser le fichier robots.txt. Par exemple, il n'est plus limité à HTTP et peut également être utilisé pour FTP ou CoAP.
  2. Les développeurs doivent analyser au moins les 500 premiers kilo-octets d'un fichier robots.txt. La définition d'une taille de fichier maximale garantit que les connexions ne sont pas ouvertes trop longtemps, ce qui réduit les contraintes inutiles sur les serveurs.
  3. Une nouvelle durée maximale de mise en cache de 24 heures ou une valeur de directive de cache, le cas échéant, donne aux propriétaires de sites Web la possibilité de mettre à jour leur fichier robots.txt à tout moment, et les robots ne surchargent pas les sites Web avec des requêtes robots.txt. Par exemple, dans le cas de HTTP, les en-têtes Cache-Control peuvent être utilisés pour déterminer l'heure de mise en cache.
  4. La spécification prévoit désormais que lorsqu'un fichier robots.txt précédemment accessible devient inaccessible en raison de défaillances du serveur, les pages non autorisées connues ne sont pas analysées pendant une période raisonnablement longue.


Dépôt GitHub du parser et matcher de robots.txt de Google en tant que bibliothèque C ++ (conforme à C ++ 11)

Source : annonce Google, formalisation de la spécification du protocole d'exclusion des robots

Voir aussi :

Mozilla réinvente son application mobile sur Android pour contrer le monopole de Google Chrome
Les implants cérébraux de Google devraient mettre fin au système éducatif tel qu'on le connait aujourd'hui, prévient un expert en IA
L'UFC-Que Choisir amorce un recours collectif contre Google et lui réclame 1000 € par titulaire d'un compte Google disposant d'un téléphone Android
Facebook et Google pourraient être contraints de vous dire combien vos données valent en vertu de la nouvelle législation américaine
Le mode confidentiel de Gmail n'est pas sécurisé ni privé, mais une astuce marketing de Google pour apaiser les utilisateurs, selon ProtonMail