Nuestra postura, declarada: somos Geonode y vendemos proxies, que es el producto que la mayoría de los artículos sobre este tema pretenden vender. Si se hace una clasificación honesta, los proxies ocupan más o menos el sexto lugar, y las cinco cosas que les preceden son gratuitas. El control del ritmo, la identificación, el almacenamiento en caché, el cumplimiento de Retry-After y la lectura de robots.txt evitarán más bloqueos que cualquier cantidad de rotación de direcciones, ya que abordan la razón real por la que los sitios bloquean a los rastreadores —la carga y la imprevisibilidad— en lugar del síntoma. Los proxies ayudan realmente con un problema específico, que se tratará más adelante. Si recurres a ellos primero, gastarás dinero y seguirás siendo bloqueado.
Por qué se bloquean realmente los rastreadores
Cuatro causas, en orden descendente de frecuencia.
Frecuencia. Has realizado demasiadas solicitudes en muy poco tiempo. Esta es, con diferencia, la causa más habitual, y está totalmente bajo tu control. A un sitio web no le importa quién seas cuando decide que treinta solicitudes por segundo desde una misma dirección suponen un problema.
Imprevisibilidad. Picos de tráfico, reintentos tras errores, rastreo repetido de las mismas páginas, seguimiento de espacios de URL infinitos. Una carga que un sitio web no puede prever es peor que una que sí puede prever.
Anonimato. Un cliente no identificado que genera tráfico inexplicable es un problema que hay que detener. Uno identificado es una decisión que hay que tomar, y con frecuencia la decisión es permitirlo.
Señales de identidad. Tipo de dirección, huella digital TLS, composición de los encabezados. Son reales y ocupan el último lugar de esta lista porque solo cobran importancia una vez que un sitio web ya ha decidido que no quiere automatización no identificada, y porque son los más difíciles de modificar con honestidad.
Obsérvese que tres de los cuatro se refieren al comportamiento. El énfasis del sector en el cuarto se debe a que es lo más fácil de vender, no a que sea lo que provoca la mayoría de los bloqueos.
Empieza por no tener que rastrear
La medida que ofrece el mejor rendimiento y la que más se suele pasar por alto.
Comprueba si hay una API. Muchos sitios web publican una, y es estable, estructurada y autorizada. Rastrear un sitio web que ofrece una API supone más trabajo para un resultado peor.
Comprueba si hay un feed de socios o afiliados. Sectores enteros —empleo, inmobiliario, comercio minorista, viajes— publican feeds masivos específicamente para agregadores, ya que estos les aportan tráfico. Pregunta antes de crear nada. Un número sorprendente de sitios web dice que sí.
Comprueba si hay un mapa del sitio. Te proporciona un inventario de URL, además de marcas de tiemplastmodes, por lo que puedes recuperar solo lo que ha cambiado en lugar de todo.
Comprueba si hay datos estructurados incrustados. El JSON-LD en un bloque <script type="application/ld+json"> está diseñado para ser leído por máquinas, sobrevive a los rediseños y ya se encuentra en la página que ibas a rastrear.
Comprueba si los datos existen en otro lugar. Conjuntos de datos públicos, archivos, documentos oficiales.
Cada una de estas medidas elimina el problema que supone el bloqueo, en lugar de mitigarlo. El reflejo de escribir primero un rastreador es el hábito más costoso en este campo, y es por eso por lo que hemos situado esta sección antes que cualquier aspecto técnico. Hemos tratado la jerarquía completa de fuentes en cómo encontrar todas las páginas de un sitio web.
Lee primero las normas: «
robots.txt» es ya un estándar, RFC 9309, y respetarlo correctamente es tanto una cuestión de cumplimiento normativo como de interés propio.
Los aspectos que importan desde el punto de vista operativo: la coincidencia se determina por especificidad en lugar de orden —prevalece la regla de coincidencia más larga—; una respuesta 5xx significa denegación total, no «sigue adelante»; una 404 significa que no hay restricciones; y el archivo debe actualizarse al menos cada 24 horas, en lugar de recuperarse una sola vez al iniciar el sistema.
Utiliza un analizador sintáctico actualizado. Tanto la regla de especificidad como la normalización de la codificación porcentual son fáciles de interpretar erróneamente, y un rastreador que lee mal el archivo es aquel que cree que cumple con las normas cuando en realidad no es así. Hemos repasado los detalles en cómo leer un archivo robots.txt.
A continuación, lee las condiciones de uso. «robots.txt» no implica autorización —el RFC lo dice claramente— y un sitio web puede prohibir el acceso automatizado independientemente de lo que permita el archivo. Es mejor saberlo antes de empezar que descubrirlo en una carta.
Dosifica adecuadamente tus solicitudes
La medida técnica más valiosa y la más económica.
Una solicitud cada uno o dos segundos por dominio es un valor predeterminado razonable. Más lento para sitios web pequeños, y no más rápido sin pruebas de que el destino lo tolere.
Respeta el valor de «Crawl-delay» cuando robots.txt establezca uno. Se trata de una extensión, más que de parte del estándar, y respetarla no cuesta nada y demuestra buena fe.
Añade variabilidad. Las solicitudes a intervalos exactamente regulares son un patrón que ningún ser humano produce. Aleatorizarlas entre, por ejemplo, 1,0 y 2,5 segundos elimina ese patrón sin ningún coste.
Limita la concurrencia por dominio, no de forma global. Ocho solicitudes simultáneas repartidas entre ocho dominios es una actitud respetuosa. Ocho contra un solo dominio, no lo es.
Realiza el rastreo durante las horas de menor tráfico siempre que puedas. La tolerancia de un sitio web es menor cuando está saturado, y una tarea que se ejecuta durante la noche no te supone ningún coste adicional.
Y amplía tu ventana de tiempo antes de añadir capacidad. Este es el cambio de perspectiva más útil que existe: cincuenta mil páginas repartidas a lo largo de veinticuatro horas necesitan unas dos conexiones simultáneas; las mismas cincuenta mil en dos horas necesitan veinte. Si nada depende de que la tarea termine rápidamente —y normalmente nada lo hace—, la programación es la palanca más económica de la que dispones. Hemos analizado las cifras en ¿cuántos proxies necesitas?.
Identifícate
Contrario a lo que parece, pero siempre eficaz.
User-Agent: AcmePriceBot/1.2 (+https://acme.example.com/bot)
Un nombre, una versión y una URL donde alguien pueda averiguar quién eres y cómo ponerse en contacto contigo. Tres ventajas, todas reales:
**robots.txt
puede dirigirse a ti de forma específica.** Las reglas se aplican en función del token del producto, por lo que un sitio web puede conceder a tu rastreador un permiso que no concede a todo el mundo. Eso no puede suceder si eres anónimo.
Los administradores pueden ponerse en contacto contigo en lugar de bloquearte. Esto ocurre con más frecuencia de lo que la gente espera, y es un resultado mucho mejor que descubrir un bloqueo tres semanas más tarde.
Permite solicitar acceso. «Somos el rastreador identificado como AcmePriceBot; esto es lo que recopilamos y por qué» es una conversación que puede dar sus frutos.
La alternativa —una cadena copiada de Chrome— crea una contradicción en lugar de un disfraz, ya que un agente de usuario de navegador en una conexión cuya huella TLS y conjunto de encabezados claramente no son los de un navegador resulta más identificable que una admisión sincera. Ya tratamos este tema en cómo configurar un agente de usuario personalizado con curl.
Almacenamiento en caché y uso de solicitudes condicionales
La medida que reduce la carga sin mermar la cobertura.
Nunca recuperes dos veces el mismo recurso si no ha cambiado. Almacena lo que has recuperado, junto con sus valores de «ETag» y «Last-Modified», y luego envía solicitudes condicionales:
curl -sS -H 'If-None-Match: "abc123"' https://example.com/page
Un 304 Not Modified ocupa unos pocos cientos de bytes en lugar de una página completa. En un nuevo rastreo en el que la mayoría de las páginas no han cambiado, esto reduce tanto tu factura de ancho de banda como la carga del sitio de destino en un orden de magnitud.
Utiliza lastmod desde el mapa del sitio para decidir qué recuperar. Un sitio con cincuenta mil páginas, de las cuales doscientas han cambiado hoy, supone un rastreo de doscientas páginas, no de cincuenta mil.
Almacena las respuestas sin procesar. Cuando falle un analizador, vuelve a analizar lo que tienes en lugar de volver a recuperar los datos. Esto supone un ahorro de costes y, al mismo tiempo, una cortesía.
Deduplica las URL correctamente. Normaliza las barras finales, el orden de los parámetros de consulta, las mayúsculas y minúsculas del nombre de host y elimina los parámetros de seguimiento. Un rastreador sin normalización visita la misma página muchas veces y parece un cliente mucho más pesado de lo que realmente es.
Gestiona los errores tal y como indica el servidor
Los servidores te indican qué hacer. Seguir las instrucciones es lo correcto y, además, la forma más rápida de volver a funcionar correctamente.
429 Too Many Requests se define en RFC 6585 como una indicación de «que el usuario ha enviado demasiadas solicitudes en un periodo de tiempo determinado («limitación de tasa»)». La respuesta «PUEDE incluir un encabezado Retry-After que indique cuánto tiempo hay que esperar antes de realizar una nueva solicitud».
503 Service Unavailable significa que el servidor «no puede gestionar la solicitud en este momento debido a una sobrecarga temporal o a un mantenimiento programado», y que «PUEDE enviar un campo de encabezado Retry-After... para sugerir un tiempo de espera adecuado para el cliente».
Retry-After admite una fecha HTTP o un número de segundos, según RFC 9110: «Retry-After: 120» significa esperar dos minutos.
El comportamiento correcto ante un 429 o un 503:
Detente para ese dominio. No reduzcas la frecuencia, detente, al menos durante el intervalo indicado.
Si no hay ningún «Retry-After», retrocede exponencialmente partiendo de un valor inicial generoso.
Reduce tu tasa de estado estable posteriormente, ya que se te acaba de indicar que era demasiado alta.
Nunca vuelvas a intentarlo inmediatamente. Volver a intentar el acceso cuando existe un límite de tasa es la forma en que una restricción temporal se convierte en un bloqueo permanente, y es el error más común que uno mismo se inflige al realizar el rastreo.
Ten en cuenta también que la RFC 6585 establece que «las respuestas con el código de estado 429 NO DEBEN ser almacenadas por una caché», por lo que una capa de caché no te protegerá de repetir el error.
Cuándo los proxies resultan realmente útiles
Nuestro propio producto, descrito con la mayor precisión posible.
Son útiles cuando: has optimizado tu velocidad y aún necesitas un rendimiento que una sola dirección no puede proporcionar; necesitas acceder a contenido específico de una región, en lo que lo fundamental es que parezca que te encuentras en un lugar concreto; utilizas rastreadores distribuidos y quieres que parezcan clientes independientes en lugar de una sola máquina con muchos subprocesos; o la dirección desde la que te conectas tiene mala reputación sin que sea culpa tuya.
No sirven de nada cuando: vas demasiado rápido —la misma tasa desde más direcciones sigue siendo la misma tasa, y ahora has marcado un grupo de direcciones en lugar de una sola—. Tampoco cuando se identifica el patrón de tus solicitudes por la huella digital de TLS o la composición de los encabezados, ya que estos te acompañan a ti. Tampoco cuando un sitio web tiene condiciones que prohíben el acceso automatizado, algo que el hecho de utilizar más direcciones no cambia.
Qué tipo elegir: centro de datos para la mayoría de los rastreos, porque es mucho más barato y las páginas públicas no suelen requerir nada más; el nuestro empieza en 0,14 $/GB. Recurre a la opción residencial, a partir de 0,79 $/GB, solo cuando el centro de datos falle de forma demostrable o cuando necesites geolocalización de red de consumo. Cifras de nuestra página de precios, consultadas en septiembre de 2026.
El coste que sorprende a la gente: los navegadores sin interfaz gráfica. Un navegador descarga todas las imágenes, fuentes y scripts, por lo que el ancho de banda aumenta aproximadamente en un orden de magnitud con respecto al HTTP sin procesar. Si una página no requiere JavaScript, no la renderices; y si lo requiere, bloquea los tipos de recursos que no necesites.
Cómo distinguir un bloqueo duro de uno blando
El modo de fallo que más cuesta, porque no parece un fallo.
Un bloqueo duro devuelve un código 403, una página de autenticación o un rechazo de conexión. Es evidente, llamativo y permite actuar de inmediato.
Un bloqueo «suave» devuelve un código 200 con contenido reducido: menos elementos, campos eliminados, datos obsoletos o una página genérica en lugar de la específica. Tu métrica de tasa de éxito se mantiene en el 99 % y tus datos se deterioran silenciosamente. Esta es la respuesta más habitual de los sitios web sofisticados, precisamente porque malgasta tu presupuesto sin decirte nada.
Protégete contra ello de forma explícita:
Verifica el contenido, no el estado. Busca un marcador conocido y estable en la página y considera su ausencia como un error. Verifica los recuentos. Si una página de categoría nunca ha tenido menos de veinte elementos, considera que tener menos de veinte es un fallo. Segmenta las métricas por objetivo. Doce objetivos al 99 % y uno al 40 % dan como resultado una media que parece satisfactoria. Compáralo periódicamente con un navegador. Carga una página manualmente y compara los resultados con lo que ha recibido tu rastreador.
Se trata del mismo patrón de fallo silencioso que describimos en por qué es importante probar los proxies, y es la razón por la que «estuvimos bloqueados durante tres semanas y no nos dimos cuenta» es una categoría real de incidente.
Cuándo detenerse
La sección que menos interés tiene un proveedor de proxies en escribir.
Cuando las condiciones lo prohíben. Algunos sitios lo indican explícitamente y lo hacen cumplir. Eludir una prohibición expresa es una decisión cuyas consecuencias van más allá de lo técnico.
Cuando se te ha pedido que pares. Una solicitud directa del operador de un sitio pone fin al debate.
Cuando el esfuerzo supera el valor. Si tienes que replantearte tu enfoque cada quince días, los datos te están costando más de lo que valen. Esa es una conclusión empresarial, no un fracaso técnico.
Cuando existe una vía legítima. Una API, un feed, un conjunto de datos con licencia. Pagar por un acceso autorizado suele ser más barato que el tiempo de desarrollo dedicado a evitarlo, y además funciona sin fallos.
Cuando el sitio ha desplegado trampas. Los «tarpits» y los laberintos generados están diseñados para costarte más de lo que le cuestan al sitio: sirven contenido almacenado en caché mientras tú pagas por gigabyte y por hora de computación. Esa asimetría es deliberada y no cede ante el esfuerzo.
Pregunta primero. Un correo electrónico en el que expliques quién eres, qué necesitas y en qué volumen resuelve esto con más frecuencia de lo que el discurso sugiere, y te proporciona un acceso que sigue funcionando.
Preguntas frecuentes
¿Por qué mi rastreador sigue siendo bloqueado?
Normalmente, es por exceso de solicitudes. El número excesivo de solicitudes en poco tiempo desde una misma dirección es, con diferencia, la causa más habitual, y es algo que está totalmente bajo tu control. Los patrones impredecibles, los reintentos tras errores y la identificación anónima representan la mayor parte del resto.
¿A qué velocidad puedo rastrear una página web?
Empieza con una solicitud cada uno o dos segundos por dominio y solo aumenta la velocidad si tienes constancia de que el sitio lo tolera. Respeta el límite de velocidad (Crawl-delay) si el servidor de origen (robots.txt) establece uno. Si necesitas más rendimiento, ampliar tu intervalo de tiempo es más económico y seguro que aumentar la concurrencia.
¿Los proxies evitan que te bloqueen?
Solo en el caso de bloqueos específicos por dirección. Si vas demasiado rápido, la misma tasa de solicitudes desde más direcciones sigue siendo la misma tasa y ahora se marca todo un grupo de direcciones. Si tu patrón de solicitudes se identifica por la huella digital de TLS o por los encabezados, estos te acompañan independientemente de la dirección.
¿Debería rotar los agentes de usuario?
No. La rotación aleatoria dentro de una sesión da lugar a un cliente que parece cambiar de navegador a mitad de la visita, lo cual es una incoherencia más que un camuflaje. Un único agente de usuario honesto con una URL de contacto se bloquea con menos frecuencia que cualquier esquema de rotación.
¿Qué debo hacer cuando recibo un 429?
Detente para ese dominio y espera al menos el tiempo que especifica Retry-After. Sin ese encabezado, retrocede exponencialmente desde un punto de partida generoso y, a continuación, reduce tu tasa de estado estable: te acaban de indicar que era demasiado alta. Nunca vuelvas a intentarlo inmediatamente.
¿Cómo sé si me están bloqueando de forma suave?
Comprueba el contenido en lugar de los códigos de estado. Busca un marcador conocido como estable en cada página, verifica que el recuento de elementos sea el esperado, segmenta las métricas de éxito por objetivo en lugar de de forma agregada y compara periódicamente una página rastreada con otra cargada en un navegador.
¿Es legal rastrear un sitio web?
Depende de la jurisdicción, de los términos del sitio, de los datos en cuestión y de lo que hagas con ellos. Respetar la política de «robots.txt», identificar tu rastreador y mantener una tasa moderada es una práctica habitual, y nada de esto anula los términos de servicio ni los derechos de autor. Busca asesoramiento para cualquier asunto de importancia comercial.
¿Qué es lo más eficaz que puedo hacer?
Tómate tu tiempo y comprueba si realmente necesitas realizar el rastreo. Una API, un feed de un socio o un mapa del sitio con marcas de tiempo lastmod elimina el problema en lugar de mitigarlo; y cuando el rastreo es realmente necesario, regular el ritmo evita más bloqueos que cualquier otra medida combinada.
Conclusión
El enfoque que hace que esto sea manejable es que el bloqueo es una respuesta a la carga y a la imprevisibilidad, no a la identidad. Los sitios web no se oponen a que se les consulte; se oponen a ser saturados por algo que no pueden prever y con lo que no pueden contactar.
Esto sitúa las medidas efectivas en un orden inverso al de la mayoría de los artículos. Comprueba si realmente necesitas realizar un rastreo, ya que una API o un feed de un socio elimina el problema por completo. Lee robots.txt y respétalo correctamente, incluidas las partes sobre la coincidencia de especificidad y el significado de los códigos 5xx como «detener». Modula tu ritmo y añade jitter. Identifícate con un nombre y una URL de contacto. Almacena en caché de forma agresiva y utiliza solicitudes condicionales para no volver a recuperar nunca lo que no ha cambiado. Haz lo que te indica Retry-After.
Todo eso es gratuito y evitará más bloqueos que cualquier inversión en infraestructura. Los proxies ayudan con un problema concreto y más limitado —el rendimiento que supera el límite de una sola dirección y el contenido que varía según la región— y no sirven para nada más de lo que figura en la lista.
Y ten siempre presente la última sección. Un sitio web que ha establecido condiciones, ha implementado medidas de bloqueo o te ha pedido que dejes de acceder te ha dicho algo, y las alternativas a intentar burlar esas medidas suelen ser más baratas y siempre más duraderas.
