Articulo de referencia

Raspado de motores de búsqueda

El scraping de motores de búsqueda es el proceso de recolección de URL , descripciones u otra información de los motores de búsqueda . Se trata de una forma específica de scrapi...

El scraping de motores de búsqueda es el proceso de recolección de URL , descripciones u otra información de los motores de búsqueda . Se trata de una forma específica de scraping de pantalla o scraping web dedicado únicamente a los motores de búsqueda.

La mayoría de los proveedores de optimización de motores de búsqueda (SEO) más grandes dependen de la extracción regular de palabras clave de los motores de búsqueda para monitorear la posición competitiva de los sitios web de sus clientes en busca de palabras clave relevantes o su estado de indexación .

El proceso de ingresar a un sitio web y extraer datos de manera automática también se suele denominar " rastreo ". Los motores de búsqueda obtienen casi todos sus datos de robots de rastreo automático.

Dificultades

Google es por lejos el motor de búsqueda más grande con la mayor cantidad de usuarios, así como la mayor cantidad de ingresos en publicidad creativa, lo que hace que Google sea el motor de búsqueda más importante para las empresas relacionadas con SEO. [1]

Aunque Google no emprende acciones legales contra el scraping, utiliza una variedad de métodos defensivos que hacen que el scraping de sus resultados sea una tarea difícil, incluso cuando la herramienta de scraping está falsificando de manera realista un navegador web normal:

  • Google utiliza un sistema complejo de limitación de la tasa de solicitudes que puede variar en función del idioma, el país, el agente de usuario y las palabras clave o los parámetros de búsqueda. La limitación de la tasa puede hacer que el acceso a un motor de búsqueda automatizado sea impredecible, ya que los patrones de comportamiento no son conocidos por el desarrollador externo ni por el usuario.
  • Las limitaciones de red e IP también forman parte de los sistemas de defensa contra el scraping. No es fácil engañar a los motores de búsqueda cambiando a otra IP, mientras que el uso de proxies es una parte muy importante para el éxito del scraping. La diversidad y el historial de abusos de una IP también son importantes.
  • Las direcciones IP y las redes IP que infringen la normativa pueden almacenarse fácilmente en una base de datos de listas negras para detectar a los infractores mucho más rápido. El hecho de que la mayoría de los ISP proporcionen direcciones IP dinámicas a los clientes exige que dichas prohibiciones automáticas sean solo temporales y no bloqueen a usuarios inocentes.
  • La detección basada en el comportamiento es el sistema de defensa más difícil. Los motores de búsqueda ofrecen sus páginas a millones de usuarios todos los días, lo que proporciona una gran cantidad de información sobre el comportamiento. Un script o bot de scraping no se comporta como un usuario real; además de tener tiempos de acceso, demoras y tiempos de sesión atípicos, las palabras clave que se recopilan pueden estar relacionadas entre sí o incluir parámetros inusuales. Google, por ejemplo, tiene un sistema de análisis de comportamiento muy sofisticado, que posiblemente utilice software de aprendizaje profundo para detectar patrones de acceso inusuales. Puede detectar actividad inusual mucho más rápido que otros motores de búsqueda. [2]
  • El marcado HTML cambia según los métodos utilizados para recopilar el contenido de un sitio web; incluso un pequeño cambio en los datos HTML puede hacer que una herramienta de raspado no funcione hasta que se actualice.
  • Cambios generales en los sistemas de detección. En los últimos años, los motores de búsqueda han ido reforzando sus sistemas de detección casi mes a mes, lo que hace que sea cada vez más difícil realizar un rastreo fiable, ya que los desarrolladores necesitan experimentar y adaptar su código con regularidad. [3]

Detección

Cuando la defensa del motor de búsqueda piensa que un acceso podría ser automatizado, el motor de búsqueda puede reaccionar de manera diferente.

La primera capa de defensa es una página captcha [4] en la que se le pide al usuario que verifique que es una persona real y no un bot o una herramienta. Al resolver el captcha se creará una cookie que le permitirá acceder nuevamente al motor de búsqueda por un tiempo. Después de aproximadamente un día, la página captcha se mostrará nuevamente.

La segunda capa de defensa es una página de error similar pero sin captcha, en tal caso el usuario queda completamente bloqueado y no puede usar el motor de búsqueda hasta que se levante el bloqueo temporal o el usuario cambie su IP.

La tercera capa de defensa es un bloqueo a largo plazo de todo el segmento de la red. Google ha bloqueado grandes bloqueos de red durante meses. Es probable que este tipo de bloqueo lo active un administrador y solo ocurre si una herramienta de extracción de datos envía una cantidad muy elevada de solicitudes.

Todas estas formas de detección también pueden ocurrirle a un usuario normal, especialmente a usuarios que comparten la misma dirección IP o clase de red (rangos IPV4 así como rangos IPv6).

Métodos de raspado

Para rastrear con éxito un motor de búsqueda, los dos factores principales son el tiempo y la cantidad.

Cuanto más palabras clave necesite extraer un usuario y cuanto menor sea el tiempo necesario para realizar la tarea, más difícil será el proceso y más desarrollado deberá ser el script o la herramienta de extracción.

Los scripts de scraping deben superar algunos desafíos técnicos: [ cita requerida ]

  • Utilizar la rotación de IP con servidores proxy. Estos servidores proxy deben ser exclusivos (no compartidos) y no estar marcados en ninguna lista negra.
  • Gestión adecuada del tiempo, tiempo entre cambios de palabras clave, paginación y retrasos colocados correctamente Las tasas de scraping efectivas a largo plazo pueden variar desde solo 3 a 5 solicitudes (palabras clave o páginas) por hora hasta 100 y más por hora para cada dirección IP / Proxy en uso. La calidad de las IP, los métodos de scraping, las palabras clave solicitadas y el idioma / país solicitado pueden afectar en gran medida la tasa máxima posible.
  • Manejo correcto de parámetros URL, cookies así como encabezados HTTP para emular a un usuario con un navegador típico
  • Análisis DOM HTML (extracción de URL, descripciones, posición en el ranking, enlaces de sitio y otros datos relevantes del código HTML)
  • Manejo de errores, reacción automática en captcha o páginas bloqueadas y otras respuestas inusuales [ cita requerida ]

Lenguajes de programación

A la hora de desarrollar un scraper para un motor de búsqueda, se puede utilizar prácticamente cualquier lenguaje de programación, aunque, dependiendo de los requisitos de rendimiento, algunos lenguajes serán más adecuados.

PHP es un lenguaje de uso común para escribir scripts de scraping para sitios web o servicios backend, ya que tiene potentes capacidades integradas (analizadores DOM, libcURL); sin embargo, su uso de memoria es típicamente 10 veces mayor que el de un código C/ C++ similar . Ruby on Rails y Python también se utilizan con frecuencia para trabajos de scraping automatizados.

Además, los scripts de bash se pueden usar junto con cURL como una herramienta de línea de comandos para rastrear un motor de búsqueda.

Al extraer datos de sitios web y servicios, la parte legal suele ser una gran preocupación para las empresas. En el caso del web scraping, esto depende en gran medida del país del que procede el usuario o la empresa que extrae datos, así como de los datos o el sitio web que se están extrayendo. Existen muchas sentencias judiciales diferentes en todo el mundo. [5] [6]

Sin embargo, cuando se trata de raspar la información de los motores de búsqueda, la situación es diferente: los motores de búsqueda generalmente no enumeran la propiedad intelectual, ya que solo repiten o resumen la información que extrajeron de otros sitios web.

El mayor incidente conocido públicamente de un motor de búsqueda raspado ocurrió en 2011, cuando Microsoft fue descubierto raspando palabras clave desconocidas de Google para su propio y relativamente nuevo servicio Bing, [7] pero ni siquiera este incidente resultó en un caso judicial.

Véase también

Referencias

  1. ^ "Google sigue siendo el motor de búsqueda más popular del mundo con diferencia, pero la proporción de usuarios únicos desciende ligeramente". searchengineland.com . 11 de febrero de 2013.
  2. ^ "¿Sabe Google que estoy usando el navegador Tor?". tor.stackexchange.com .
  3. ^ "Grupos de Google". google.com .
  4. ^ "Mi computadora está enviando consultas automáticas – Ayuda de reCAPTCHA". support.google.com . Consultado el 2 de abril de 2017 .
  5. ^ "Tribunal de apelaciones revierte condena y sentencia contra hacker/troll "weev" [Actualizado]". arstechnica.com . 11 de abril de 2014.
  6. ^ "¿Puede el scraping de contenido no infractor convertirse en una infracción de derechos de autor... debido a la forma en que funcionan los scrapers?". www.techdirt.com . 10 de junio de 2009.
  7. ^ Singel, Ryan. "Google descubre que Bing está copiando; Microsoft dice '¿Y qué?'". Wired .
Retrieved from "https://en.wikipedia.org/w/index.php?title=Search_engine_scraping&oldid=1235653651"