Glosario

¿Qué es robots.txt?

robots.txt es un archivo de texto plano en la raíz de un sitio web (por ejemplo, example.com/robots.txt) que indica a los rastreadores web a qué URLs el propietario del sitio quiere o no quiere que accedan, siguiendo el Protocolo de Exclusión de Robots.

Comprende el Protocolo de Exclusión de Robots, qué aplica realmente robots.txt (y qué no), y cómo deben tratarlo los scrapers por razones tanto legales como operativas.

Explicado

robots.txt es una convención que data de 1994: un archivo de texto plano en la raíz de un dominio que lista qué agentes de usuario (rastreadores) tienen permitido o prohibido acceder a qué rutas de URL. Los motores de búsqueda (Google, Bing) y los rastreadores bien configurados lo respetan. El archivo es de lectura pública: puedes obtener el robots.txt de cualquier sitio directamente (`curl https://example.com/robots.txt`) y leer lo que el propietario del sitio quiere que hagan los rastreadores.

El Protocolo de Exclusión de Robots es puramente orientativo. El servidor web no aplica las directivas de robots.txt, simplemente las publica. Un rastreador mal configurado puede ignorar robots.txt y el sitio servirá las URLs solicitadas de todas formas. La aplicación proviene de la política de los motores de búsqueda (Googlebot no indexará páginas desautorizadas en robots.txt) y de las consecuencias legales y reputacionales cuando los scrapers comerciales ignoran la intención explícita del propietario.

Para el scraping comercial, robots.txt importa de dos maneras. Legalmente, ignorar una directiva `Disallow` explícita puede citarse como evidencia de acceso de mala fe en casos de CFAA o uso indebido de equipos informáticos (especialmente en EE. UU. tras el fallo hiQ v LinkedIn). Operativamente, los sitios que prohíben rutas específicas suelen tener una protección antirrobot más fuerte en esas rutas: `Disallow: /search` generalmente significa que el scraping de `/search` activará defensas más intensas que el scraping del resto del sitio.

Cómo funciona

Cuando un rastreador comienza en un dominio, primero obtiene `/robots.txt` y analiza las directivas. El archivo utiliza una gramática sencilla: los bloques `User-agent: ` especifican a qué rastreador se aplican las siguientes reglas (`*` para todos), `Disallow: ` bloquea prefijos de URL específicos, `Allow: ` vuelve a permitir rutas dentro de un prefijo no permitido, y las directivas opcionales `Crawl-delay: ` y `Sitemap: ` proporcionan metadatos.

El rastreador comprueba entonces cada URL que considera obtener con respecto a las reglas y omite las rutas no permitidas. Algunos rastreadores almacenan en caché robots.txt durante 24 horas; los rastreadores de producción maduros se actualizan con mayor frecuencia para detectar cambios.

Tipos

Disallow

Indica a los rastreadores que no accedan a las URLs que coincidan con el prefijo. `Disallow: /admin/` excluye todo lo que hay bajo /admin/. Es la directiva más común.

Allow

Vuelve a permitir rutas específicas dentro de un prefijo bloqueado. `Disallow: /private/` + `Allow: /private/public-data/` excluye /private/ pero permite /private/public-data/.

User-agent

Se dirige a rastreadores específicos. `User-agent: Googlebot` aplica las reglas siguientes solo al rastreador de Google. `User-agent: *` se aplica a todos los rastreadores como alternativa.

Crawl-delay

Sugiere un retraso mínimo (en segundos) entre solicitudes. Lo respetan Bing y Yandex; Google lo ignora (usa en su lugar la configuración de velocidad de rastreo en Search Console).

Sitemap

Apunta al o los sitemaps XML del sitio. `Sitemap: https://example.com/sitemap.xml`. Ayuda a los rastreadores a descubrir todas las URLs que el sitio quiere indexar.

Casos de uso habituales

Indicar a los motores de búsqueda qué páginas no indexar
Evitar que los rastreadores sobrecarguen endpoints costosos
Dirigir a los rastreadores al sitemap canónico
Excluir rutas de administración y privadas de la indexación pública
Especificar el crawl-delay para rastreadores cooperativos
Documentar la política de rastreo de todo el sitio
Preguntas frecuentes

Preguntas frecuentes

Preguntas frecuentes sobre robots.txt.

Por sí solo, no. robots.txt es orientativo: el servidor no lo aplica y un rastreador no cooperativo puede ignorarlo. Sin embargo, los tribunales (especialmente en EE. UU. bajo la CFAA) han citado directivas Disallow explícitas como evidencia de la intención del propietario del sitio, lo que debilita los argumentos de los scrapers en casos de uso indebido de sistemas informáticos. Trátalo como el mínimo legal del scraping conforme.