Protocol d'exclusió de robots

De Viquipèdia
Dreceres ràpides: navegació, cerca

L'estàndard d'exclusió de robots, també conegut com a protocol d'exclusió de robots o siplement protocol robots.txt, és una convenció per a evitar que les aranyes web que el compleixin accedeixin a la totalitat o part d'un contingut, però que alhora és públic. Els robots són utilitzats pels cercadors per a poder categoritzar i arxivar llocs web, però també els empren alguns desenvolupadors web per a poder revisar-ne el codi que es recull. El complement d'aquest estàndard, per a la inclusió en comptes de l'exclusió de continguts, es coneix com a sitemaps.

Un fitxer robots.txt en un lloc web funcionarà com una sol·licitud perquè els robots ignorin els fitxers o directoris que hi són especificats en llurs cerques. Això pot estar motivat perquè els cercadors no retornin continguts de caire més privat, perquè els continguts que s'exclouen es considerin irrellevants o fora de lloc, o pel desig que una aplicació externa només pugui operar en un cert tipus de dades.

Per a aquells llocs web amb múltiples subdominis, cada un ha de contenir el seu propi fitxer robots.txt. Per exemple, si example.com té un fitxer robots.txt, però no el tingués a.example.com, les regles que s'apliquessin a example.com no es transmetrien a.example.com

Cal dir, per això, que es tracta d'una recomanació. Tot depèn de la cooperació del robot web; i per tant, marcar una àrea d'un lloc web com a exclosa amb el robots.txt no en garanteix la privadesa. Alguns administradors han provat d'utilitzar el fitxer per a fer privades parts invisibles a la resta del món, però així precisament el fitxer està disponible públicament i aquests continguts poden ser llavors determinats fàcilment des del navegador.

No hi ha cap organisme oficial que reguli aquests estàndards o cap document RFC per al protocol de robots.txt. Aquest sorgeix fruit del consens el juny de 1994 entre els membres de llista de correu de robots (robots-request@nexor.co.uk).

Exemples[modifica | modifica el codi]

Aquest exemple permet a tots els robots visitar tots els fitxers perquè l comodí "*" es refereix a tots els robots:

User-agent: *
Disallow:

Aquest altre exemple manté a tots els robots fora:

User-agent: *
Disallow: /

El següent és un exemple que diu a totes les aranyes que no entrin en 4 directoris:

User-agent: *
Disallow: /cgi-bin/
Disallow: /images/
Disallow: /tmp/
Disallow: /private/

A continuació es demana a una aranya específica que no entri en un directori concret:

User-agent: BadBot
Disallow: /private/

Un altre exemple que demana a totes les aranyes no considerar un fitxer concret:

User-agent: *
Disallow: /directory/file.html

Tingueu en compte que la resta de fitxers del directori sí que es processaran.

Un exemple que demostra com poden utilitzar-se els comentaris

# Aquests apareixen darrere d'un símbol "#" a l'inici d'una línia, o després d'una directiva
User-agent: * # match all bots
Disallow: / # keep them out

Compatibilitat[modifica | modifica el codi]

Per a evitar l'accés a totes les pàgines, no utilitzeu

Disallow: *

perquè no és una extensió estandarditzada; feu servir millor:

Disallow: /

Descobriment automàtic dels sitemaps[modifica | modifica el codi]

La majoria d'aranyes també reconeixen el paràmetre Sitemap (incloent-hi Google, Yahoo, MSN, Ask). Els Sitemaps especifiquen la ubicació de la llista d'URL del lloc web. El paràmetre és independent del parèmtre User-agent i per tant pot col·locar-se allà on es prefereixi.

Sitemap: {{format ref}} http://www.example.com/sitemap.xml.gz

Es pot trobar una explicació de com crear fitxers sitemap a sitemaps.org

Extensions no estàndards[modifica | modifica el codi]

Algunes aranyes poden reconèixer el paràmetre Crawl-delay, que defineix el nombre de segons que cal esperar entre sol·licituds en un mateix servidor: [1][2]

User-agent: *
Crawl-delay: 10

Estàndard estès[modifica | modifica el codi]

S'ha proposat un Estàndard estès per a l'exclusió de robots, aquest afegeix moltes altres directives, com ara el temps de visita, Visit-time, i la freqüencia de sol·licitus, Request-rate. Per exemple:

User-agent: *
Disallow: /downloads/
Request-rate: 1/5 # la freqüència màxima és d'1 pàgina cada 5 segons
Visit-time: 0600-0845 # només es visita entre 6:00 AM i 8:45 AM UT (GMT)

La primera versió de l'estàndard d'exclusió de robots no fa cap esment del caràcter "*" a l'ordre Disallow:. Algunes aranyes modernes com el Googlebot i l'Slurp reconeixen les cadenes que el contenen, però el MSNbot i el Teoma l'interpreten de forma diferent.[3]

Alternatives[modifica | modifica el codi]

Mentre que robots.txt és el mètode més antic i acceptat, hi ha d'altres (que poden utilitzar-se juntament amb robots.txt) que en permeten un major control, com ara inhabilitar la indexació de les imatges o l'arxivatge de les pàgines de contingut.

Etiquetes meta per a robots[modifica | modifica el codi]

Les etiquetes meta d'HTML poden utilitzar-se per a excloure els robots d'acord amb el contingut de les pàgines. De totes maneres, com en el cas anterior, també depèn de la cooperació dels programes robot. Per exemple,

<meta name="robots" content="noindex,nofollow" />

dins de la secció HEAD d'un document HTML diu als motors de cerca com ara Google, Yahoo!, o MSN que exclogui la pàgina del seu índex i que no segueixi cap enllaç que hi pugui haver per a cap possible ulterior indexació.

(Vegeu HTML Author's Guide to the Robots META tag.)

Referències[modifica | modifica el codi]

  1. «How can I reduce the number of requests you make on my web site?» (HTML). Yahoo! Slurp. [Consulta: 2007-02-08].
  2. «MSNBot is crawling a site too frequently» (HTML). Troubleshoot issues with MSNBot and site crawling. [Consulta: 2007-02-08].
  3. «Web robots and dynamic content issues» (HTML). MSNbot issues with robots.txt. [Consulta: 2007-04-01].