Cómo construir un raspador web para que sea indetectable

No hay una solución perfecta.

Aquí hay algunos obstáculos que enfrentarás:

  • Si realiza demasiadas solicitudes desde una dirección IP o subred, el sitio puede bloquearla.
  • Algunos sitios establecen cookies cuando visita la página de inicio. Cuando realice más solicitudes, comprobarán si las cookies están presentes y lo bloquearán de lo contrario.
  • Otros métodos de seguimiento como ETags y píxeles.
  • Los formularios y otros activos pueden requerir captchas. El sitio también puede presentar un captcha si sospecha que eres un bot.
  • Trampas como enlaces no visibles y funciones de JavaScript. Además, si visita páginas que no están permitidas en el archivo robots.txt del sitio, el sitio puede marcarlo como un bot.
  • Algunos sitios rastrean el flujo de la página y buscan patrones para determinar si las solicitudes son de una persona real.

Así es como puedes superarlos:

  • Use una herramienta de rotación proxy como Crawlera. [1] Esto le ahorra la molestia de administrar direcciones IP y crear una estrategia de rotación. Crawlera es especialmente bueno porque utiliza miles de IP de muchas regiones y subredes.
  • Rotar direcciones IP, agentes de usuario y cookies.
  • Siga las reglas de robots.txt.
  • Filtra páginas y solo rastrea lo que necesitas.
  • Varíe cómo su rastreador navega por las páginas para que parezca más aleatorio. Puede usar algo como Frontera [2] para un rastreo más inteligente.
  • Introduzca demoras variables entre las solicitudes que realice. Crawlera se encarga de esto por usted y tiene su propio comportamiento predefinido para dominios populares.
  • Utilice solo proxies que pertenezcan a una región específica, si es necesario. Crawlera te permite hacer esto.
  • Para parecer más orgánico, debe realizar grupos de solicitudes consecutivas con la misma dirección IP, agente de usuario y cookies. Esto hará que parezca una sesión de usuario normal. Puede usar la función de sesión de Crawlera para esto.
  • Ejecute cualquier JavaScript en la página y cargue todos los activos. Use un navegador sin cabeza como Splash [3] y enrute las solicitudes a través de su API para devolver páginas renderizadas. Es de código abierto y completamente gratis.
  • Use un servicio como Death By Captcha [4] que usa tanto OCR como humanos para responder captchas por usted. Puede hacer todo esto a través de una API.

También puede contratar a un equipo que lo hará todo por usted. Scrapinghub tiene un equipo de servicios profesionales que puede armar un rastreador para usted, en caso de que esté interesado. [5]

[1] Crawlera

[2] scrapinghub / frontera

[3] scrapinghub / splash

[4] Muerte por Captcha

[5] Servicios profesionales

Descargo de responsabilidad: trabajo para Scrapinghub, autores de Crawlera, Frontera y Splash.

Hola chicos, pueden crear cualquier software / bot con BotChief como el registro de cuenta, el raspador de contenido y el envío de artículos, etc.

Y también puede probar ContentBomb , Scrape, Convert, Result y Submit – ¡Todo en un solo!
ContentBomb está hecho para ser muy inteligente, permitiéndole raspar cualquier cosa y convertirlo a cualquier formato de contenido nuevo, luego puede guardar el contenido nuevo en prácticamente cualquier formato de archivo personalizado o enviarlo a su weblog o sitio web.

Código de cupón del 30%: WHBCoupon30OFF

La respuesta cambia según cuán indetectable quieras ser …

Si por indetectable te refieres a “No quiero ser el clavo que sobresale”, simplemente limita la velocidad de tu raspador al principio. Randy Jenkins está en lo correcto, el servidor no tiene conocimiento (o no le importa) qué hace con la información que se le sirve, pero le importará si lo bombardea con solicitudes que no tienen sentido o parecen hacer algo raro.

Si lo que realmente busca es el anonimato, su trabajo es ocultar su IP de origen. Las estrategias típicas incluyen: VPN, proxy y / o Tor (y medidas que le impiden decirle al mundo quién es realmente … por ejemplo, no inicie sesión ni revele nada sobre usted, como la zona horaria o el agente de usuario).

Si desea los 9 metros completos (es decir, esto nunca sucedió), realmente no puede sin explotar las vulnerabilidades para eliminar los registros del servidor *, que generalmente es ilegal *. Incluso entonces, su tráfico puede ser registrado en tránsito (por su ISP / VPN / etc.).

David Tucker te da casi todo lo que necesitas.

Una adición que agregaría al “no sobresalir” si va a usar un proxy o Tor, es también rotar su cadena de User-Agent. Cada navegador tiene uno, y puedes buscar en Google cadenas comunes de UA. Haga que su scraper se informe como IE11 para algunas solicitudes, y luego cuando Tor cambie su IP, haga que su script se informe como Firefox, luego Chrome, luego Safari, etc. Esto será mucho más difícil para los sitios para discernir del tráfico real .

En general, “listo para usar” (sin reconfiguración), la mayoría de las bibliotecas que usaría para el raspado (curl, urllib, etc.) informarán el nombre de la biblioteca como su cadena de User-Agent, que definitivamente sobresaldrá, incluso si usa un proxy, etc.

David sugirió limitar la velocidad de su raspador, lo que funcionará muy bien. También sugeriría temporizadores aleatorios para que no te vean golpeando su sitio exactamente cada 5 segundos. Pero si va a raspar una gran cantidad de datos de un sitio, definitivamente gire a través de las cadenas de UA y use temporizadores aleatorios.

Realmente no hay una “bala de plata” para construir un raspador indetectable, ya que los sitios tendrán diferentes perfiles de riesgo y, como tal, busquen diferentes signos de que su agente es un raspador, no un ser humano.

En general, querrás considerar hacer lo siguiente:

  • Hacer solicitudes desde varias direcciones IP. Puede hacer esto con Tor Browser o simplemente usando docenas de IP de un proveedor de nube que elija.
  • Hacer solicitudes con cookies reales / válidas. Básicamente, navega por el sitio como un usuario real para que obtengas las cookies correctas a medida que avanzas.
  • Asegúrese de pasar todas las comprobaciones furtivas de un navegador “real” como comprobar Flash, la resolución de su pantalla y similares. Puedes lograr esto usando algo como Electron
  • Ve despacio, no seas codicioso. Muchas veces, la solicitud por segundo es una de las primeras cosas que dispara los sistemas de detección, así que tómalo con calma y podrías volar por debajo del radar.

¡Buena suerte!

Hola,

Debe contratar proveedores de servicios de raspado web.

“¡Desguace web, rastreo web, análisis de texto, recopilación de datos y cosas relacionadas!”

Web Data Scraping ofrece un servicio de raspado de web 100% seguro, asequible y preciso, extracción / raspado de datos, análisis de texto, raspado de pantalla, extracción de datos web y raspado de sitios web y servicio de desarrollo de raspado personalizado para grandes empresas y medianas empresas que Necesita datos para ser procesados.

Siguiendo el tipo de sitios web que han raspado.

Datos financieros complejos, Tweets de Twitter, Amazon Scraping, eBay Scraping, Craigslist Scraping, IMDB, Airbnb, Facebook, LinkedIn, GitHub, redes sociales, Google, Bing, eventos, conciertos, boletos, viajes, aerolíneas, vuelos, hoteles, personas, Números de teléfono, páginas blancas, páginas amarillas, correos electrónicos, bienes raíces, apartamentos, agentes, casas, hipotecas, ejecuciones hipotecarias, fontaneros, dentistas, tiendas minoristas locales, delincuencia, escuelas, universidades, admisiones, trabajos, revisiones, calificaciones, clasificados, noticias, Datos SEO, Supervise su competencia, información farmacéutica y de medicamentos, datos gubernamentales, gestión de la reputación en línea, restaurantes, menús, precios y control de precios, información de empresas locales, información bursátil y comercial.

Para obtener más información, visite: Servicio de raspado web, Extracción de datos y Servicio de raspado de datos

También tienen desarrolladores de PHP, iOS y Android para contratar.

Establezca un User-Agent similar a un navegador normal. Un agente de usuario es un encabezado http que pasa el cliente http (navegador) para identificarse con el servidor.

Algunas notas más importantes que debes seguir:

  1. Asegúrese de que las solicitudes estén limitadas de acuerdo con los sitios robots.txt
  2. Asegúrese de no seguir ningún enlace de no seguimiento porque el servidor podría estar configurando un honeypot donde dejan de atender sus solicitudes de IP
  3. Descargue todas las imágenes y scripts css como lo haría un navegador normal, en el orden en que lo haría un navegador.

¡Buena suerte!

Hay un servicio que encontré recientemente que quería resolver todos los problemas de los desarrolladores con respecto a su pregunta.

Desechar no es una tarea trivial, especialmente si desea hacerlo en grandes volúmenes y su producto depende de ello. Rastreo de proxy: el proxy de rastreador anónimo ofrece una API diseñada para desarrolladores y ofrece un plan de solicitud gratuito de 1000 para probar su integración, es fácil de usar y confiable. Espero que ayude si desea una solución que haga que su raspador web sea indetectable.

Bueno, puedes probar el proxy IP cuando utilices herramientas de raspado web. Las ediciones pagas de Octoparse proporcionan más de 500 proxies de terceros para la rotación automática de IP. O puede cambiar manualmente la dirección IP en la edición gratuita. Por lo tanto, su raspador web es difícil de ser detectable.

Todas las respuestas son muy buenas aquí, pero agregaría que después de haber seguido más registros de los que me gustaría mencionar, si realmente desea que no se lo detecte, haga todo lo siguiente y cambie su dirección IP cada pocas solicitudes. Si viera una sola ip golpeando tantas páginas, sentiría curiosidad.