
Un rastreador web , a veces llamado araña o spiderbot y a menudo abreviado como rastreador , es un bot de Internet que navega sistemáticamente por la World Wide Web y que normalmente es operado por motores de búsqueda con el propósito de indexar la web ( rastreo web ). [ 1 ]
Los motores de búsqueda y otros sitios web utilizan software de rastreo web para actualizar su contenido o los índices de contenido de otros sitios. Los rastreadores web copian las páginas para que un motor de búsqueda las procese, indexando así las páginas descargadas para que los usuarios puedan realizar búsquedas de forma más eficiente.
Los rastreadores consumen recursos en los sistemas visitados y, a menudo, acceden a sitios web sin solicitud previa. Al acceder a grandes colecciones de páginas, entran en juego cuestiones de programación, carga y "cortesía". Existen mecanismos para que los sitios públicos que no desean ser rastreados puedan comunicárselo al agente de rastreo. Por ejemplo, incluir un robots.txtarchivo puede solicitar a los bots que indexen solo partes de un sitio web, o incluso que no indexen nada.
El número de páginas web es extremadamente grande, y los motores de búsqueda no indexan todo el contenido web. Estudios sobre los motores de búsqueda de finales de la década de 1990 revelaron que cada motor indexaba solo una fracción de la web indexable en aquel entonces. [ 2 ] [ 3 ] Los motores de búsqueda modernos utilizan sistemas de rastreo, indexación y clasificación para ofrecer resultados relevantes rápidamente, aunque no todas las páginas son rastreadas, indexadas o mostradas. [ 4 ]
Los rastreadores pueden validar hipervínculos y código HTML . También se pueden utilizar para la extracción de datos web y la programación basada en datos .
Nomenclatura
Un rastreador web también se conoce como araña , [ 5 ] hormiga , indexador automático , [ 6 ] o (en el contexto del software FOAF ) rastreador web . [ 7 ]
Descripción general
Un rastreador web comienza con una lista de URL para visitar. Estas primeras URL se denominan semillas . A medida que el rastreador visita estas URL, comunicándose con los servidores web que responden a ellas, identifica todos los hipervínculos en las páginas web recuperadas y los agrega a la lista de URL para visitar, denominada frontera de rastreo . Las URL de la frontera se visitan recursivamente según un conjunto de políticas. Si el rastreador está realizando un archivado de sitios web (o archivado web ), copia y guarda la información a medida que avanza. Los archivos generalmente se almacenan de tal manera que se pueden ver, leer y navegar como si estuvieran en la web en vivo, pero se conservan como «instantáneas». [ 8 ]
El gran volumen de datos implica que el rastreador solo puede descargar un número limitado de páginas web en un tiempo determinado, por lo que necesita priorizar sus descargas. La alta frecuencia de cambios puede indicar que las páginas ya se han actualizado o incluso eliminado.
La cantidad de URL posibles que genera el software del servidor también dificulta que los rastreadores web eviten recuperar contenido duplicado . Existen infinitas combinaciones de parámetros HTTP GET (basados en URL), de las cuales solo una pequeña selección devolverá contenido único. Por ejemplo, una galería de fotos en línea puede ofrecer tres opciones a los usuarios, especificadas mediante parámetros HTTP GET en la URL. Si existen cuatro formas de ordenar las imágenes, tres tamaños de miniatura , dos formatos de archivo y una opción para deshabilitar el contenido proporcionado por el usuario, entonces se puede acceder al mismo conjunto de contenido con 48 URL diferentes, todas ellas enlazadas en el sitio. Esta combinación matemática crea un problema para los rastreadores, ya que deben examinar un sinfín de combinaciones de cambios de script relativamente pequeños para recuperar contenido único.
Como señalaron Edwards et al. , "Dado que el ancho de banda para realizar rastreos no es infinito ni gratuito, se está volviendo esencial rastrear la Web de una manera no solo escalable, sino eficiente, si se quiere mantener un nivel razonable de calidad o actualidad". [ 9 ] Un rastreador debe elegir cuidadosamente en cada paso qué páginas visitar a continuación.
Política de rastreo
El comportamiento de un rastreador web es el resultado de una combinación de políticas: [ 10 ]
- una política de selección que indica las páginas a descargar
- una política de revisión que indica cuándo comprobar si hay cambios en las páginas
- una política de cortesía que establece cómo evitar sobrecargar los sitios web
- una política de paralelización que establece cómo coordinar los rastreadores web distribuidos
Política de selección
Dado el tamaño actual de la Web, incluso los grandes motores de búsqueda cubren solo una parte de la parte disponible públicamente. Un estudio de 2009 mostró que incluso los motores de búsqueda a gran escala indexan no más del 40-70% de la Web indexable; [ 11 ] un estudio anterior de Steve Lawrence y Lee Giles mostró que ningún motor de búsqueda indexaba más del 16% de la Web en 1999. [ 12 ] Como un rastreador siempre descarga solo una fracción de las páginas web , es muy deseable que la fracción descargada contenga las páginas más relevantes y no solo una muestra aleatoria de la Web.
Esto requiere una métrica de importancia para priorizar las páginas web. La importancia de una página depende de su calidad intrínseca , su popularidad en términos de enlaces o visitas, e incluso de su URL (esto último aplica a los motores de búsqueda verticales restringidos a un único dominio de nivel superior , o a los motores de búsqueda restringidos a un sitio web fijo). Diseñar una buena política de selección presenta una dificultad adicional: debe funcionar con información parcial, ya que el conjunto completo de páginas web no se conoce durante el rastreo.
Junghoo Cho et al. realizaron el primer estudio sobre políticas para la programación del rastreo. Su conjunto de datos consistió en un rastreo de 180 000 páginas del stanford.edudominio, en el que se realizó una simulación de rastreo con diferentes estrategias. [ 13 ] Las métricas de ordenación probadas fueron la búsqueda en amplitud , el recuento de backlinks y los cálculos parciales de PageRank . Una de las conclusiones fue que si el rastreador desea descargar páginas con un PageRank alto al principio del proceso de rastreo, la estrategia de PageRank parcial es la mejor, seguida de la búsqueda en amplitud y el recuento de backlinks. Sin embargo, estos resultados corresponden a un solo dominio. Cho también escribió su tesis doctoral en Stanford sobre rastreo web. [ 14 ]
Marc Najork y Janet Wiener realizaron un rastreo real de 328 millones de páginas, utilizando un ordenamiento en amplitud. [ 15 ] Descubrieron que un rastreo en amplitud captura las páginas con un PageRank alto al principio del rastreo (pero no compararon esta estrategia con otras). La explicación que dieron los autores para este resultado es que "las páginas más importantes tienen muchos enlaces hacia ellas desde numerosos hosts, y esos enlaces se encontrarán pronto, independientemente del host o la página desde donde se origine el rastreo".
Abiteboul diseñó una estrategia de rastreo basada en un algoritmo llamado OPIC (On-line Page Importance Computation). [ 16 ] En OPIC, a cada página se le asigna una cantidad inicial de "dinero" que se distribuye equitativamente entre las páginas a las que apunta. Es similar a un cálculo de PageRank, pero es más rápido y se realiza en un solo paso. Un rastreador impulsado por OPIC descarga primero las páginas en la frontera de rastreo con mayores cantidades de "dinero". Se realizaron experimentos en un grafo sintético de 100 000 páginas con una distribución de ley de potencias de los enlaces entrantes. Sin embargo, no se realizó ninguna comparación con otras estrategias ni experimentos en la web real.
Boldi et al. utilizaron simulaciones en subconjuntos de la Web de 40 millones de páginas del .itdominio y 100 millones de páginas del rastreo de WebBase, probando la búsqueda en amplitud frente a la búsqueda en profundidad, el ordenamiento aleatorio y una estrategia omnisciente. La comparación se basó en qué tan bien el PageRank calculado en un rastreo parcial se aproxima al valor real de PageRank. Algunas visitas que acumulan PageRank muy rápidamente (en particular, la búsqueda en amplitud y la visita omnisciente) proporcionan aproximaciones progresivas muy deficientes. [ 17 ] [ 18 ]
Baeza-Yates et al. utilizaron simulación en dos subconjuntos de la Web de 3 millones de páginas del dominio .gry , probando varias estrategias de rastreo. [ 19 ] Demostraron que tanto la estrategia OPIC como una estrategia que utiliza la longitud de las colas por sitio son mejores que el rastreo en amplitud , y que también es muy efectivo utilizar un rastreo anterior, cuando está disponible, para guiar el actual..cl
Daneshpajouh et al. diseñaron un algoritmo basado en la comunidad para descubrir buenas semillas. [ 20 ] Su método rastrea páginas web con alto PageRank de diferentes comunidades en menos iteraciones en comparación con el rastreo que comienza con semillas aleatorias. Se puede extraer una buena semilla de un grafo web previamente rastreado usando este nuevo método. Usando estas semillas, un nuevo rastreo puede ser muy efectivo.
Restringir los enlaces seguidos
Un rastreador web puede querer buscar únicamente páginas HTML y evitar otros tipos MIME . Para solicitar solo recursos HTML, puede realizar una solicitud HTTP HEAD para determinar el tipo MIME de un recurso web antes de solicitarlo por completo con una solicitud GET. Para evitar realizar numerosas solicitudes HEAD, puede examinar la URL y solicitar un recurso solo si esta termina con ciertos caracteres como .html, .htm, .asp, .aspx, .php, .jsp, .jspx o una barra diagonal. Esta estrategia puede provocar que se omitan involuntariamente numerosos recursos web HTML.
Algunos rastreadores web también pueden evitar solicitar recursos que contengan un signo de interrogación (generados dinámicamente) para evitar trampas que podrían provocar la descarga de un número infinito de URL de un sitio web. Esta estrategia no es fiable si el sitio utiliza la reescritura de URL para simplificarlas.
Los propietarios de sitios web pueden indicar a los rastreadores qué recursos tienen permitido y cuáles no, mediante el archivo robots.txt . Un rastreador puede entonces usar esa información para elegir qué enlaces seguir y cuáles evitar.
Normalización de URL
Los rastreadores suelen realizar algún tipo de normalización de URL para evitar rastrear el mismo recurso más de una vez. El término normalización de URL , también llamado canonicalización de URL , se refiere al proceso de modificar y estandarizar una URL de manera consistente. Existen varios tipos de normalización que se pueden realizar, incluyendo la conversión de URL a minúsculas, la eliminación de los segmentos "." y ".", y la adición de barras diagonales al final del componente de ruta no vacío. [ 21 ]
Desplazamiento a rastras ascendente por sendero
Algunos rastreadores pretenden descargar/subir tantos recursos como sea posible de un sitio web en particular. Por lo tanto, se introdujo el rastreador de ruta ascendente que ascendería a cada ruta en cada URL que pretende rastrear. [ 22 ] Por ejemplo, cuando se le da una URL semilla de http://llama.org/hamster/monkey/page.html , intentará rastrear /hamster/monkey/, /hamster/ y /. Cothey descubrió que un rastreador de ruta ascendente era muy eficaz para encontrar recursos aislados, o recursos para los que no se habría encontrado ningún enlace entrante en el rastreo regular.
Gateo concentrado
La importancia de una página para un rastreador también puede expresarse como una función de la similitud de una página con una consulta dada. Los rastreadores web que intentan descargar páginas que son similares entre sí se denominan rastreadores enfocados o rastreadores temáticos . Los conceptos de rastreo temático y enfocado fueron introducidos por primera vez por Filippo Menczer [ 23 ] [ 24 ] y por Soumen Chakrabarti et al. [ 25 ].
El principal problema del rastreo web enfocado radica en que, en el contexto de un rastreador web, se busca predecir la similitud del texto de una página con la consulta antes de descargarla. Un posible predictor es el texto ancla de los enlaces; este fue el enfoque adoptado por Pinkerton [ 26 ] en el primer rastreador web de los inicios de la web. Diligenti et al. [ 27 ] proponen utilizar el contenido completo de las páginas ya visitadas para inferir la similitud entre la consulta y las páginas aún no visitadas. El rendimiento del rastreo web enfocado depende principalmente de la riqueza de enlaces sobre el tema específico que se busca, y suele basarse en un motor de búsqueda web general para obtener puntos de partida.
Rastreador con enfoque académico
Un ejemplo de rastreadores especializados son los rastreadores académicos, que rastrean documentos académicos de acceso libre, como citeseerxbot , el rastreador del motor de búsqueda CiteSeer X. Otros motores de búsqueda académicos son Google Scholar y Microsoft Academic Search, entre otros. Dado que la mayoría de los artículos académicos se publican en formato PDF , este tipo de rastreador está particularmente interesado en rastrear archivos PDF, PostScript y Microsoft Word , incluyendo sus formatos comprimidos . Por ello, los rastreadores generales de código abierto, como Heritrix , deben personalizarse para filtrar otros tipos MIME , o bien se utiliza un middleware para extraer estos documentos e importarlos a la base de datos y repositorio del rastreo especializado. [ 28 ] Identificar si estos documentos son académicos o no es un desafío y puede añadir una sobrecarga significativa al proceso de rastreo, por lo que esto se realiza como un proceso posterior al rastreo utilizando algoritmos de aprendizaje automático o expresiones regulares . Estos documentos académicos se obtienen generalmente de las páginas web de facultades y estudiantes o de las páginas de publicación de institutos de investigación. Dado que los documentos académicos constituyen solo una pequeña fracción de todas las páginas web, una buena selección de semillas es importante para aumentar la eficiencia de estos rastreadores web. [ 29 ] Otros rastreadores académicos pueden descargar archivos de texto plano y HTML que contienen metadatos de artículos académicos, como títulos, artículos y resúmenes. Esto aumenta el número total de artículos, pero una fracción significativa puede no ofrecer descargas gratuitas en PDF.
Rastreador semántico
Otro tipo de rastreadores enfocados es el rastreador enfocado semántico, que utiliza ontologías de dominio para representar mapas temáticos y vincular páginas web con conceptos ontológicos relevantes para fines de selección y categorización. [ 30 ] Además, las ontologías pueden actualizarse automáticamente en el proceso de rastreo. Dong et al. [ 31 ] introdujeron un rastreador basado en el aprendizaje de ontologías que utiliza una máquina de vectores de soporte para actualizar el contenido de los conceptos ontológicos al rastrear páginas web.
Política de revisión
La web es muy dinámica, y rastrear solo una fracción de ella puede llevar semanas o meses. Para cuando un rastreador web termina su trabajo, pueden haber ocurrido muchos eventos, como creaciones, actualizaciones y eliminaciones.
Desde el punto de vista del motor de búsqueda, existe un costo asociado con no detectar un evento y, por lo tanto, con tener una copia desactualizada de un recurso. Las funciones de costo más utilizadas son la actualidad y la antigüedad. [ 32 ]
Actualización : Esta es una medida binaria que indica si la copia local es precisa o no. La actualización de una página p en el repositorio en el tiempo t se define como:
Edad : Esta es una medida que indica cuán desactualizada está la copia local. La edad de una página p en el repositorio, en el tiempo t, se define como:
Coffman et al. trabajaron con una definición del objetivo de un rastreador web equivalente a la frescura, pero con una redacción diferente: proponen que un rastreador debe minimizar la fracción de tiempo que las páginas permanecen desactualizadas. También señalaron que el problema del rastreo web puede modelarse como un sistema de sondeo de múltiples colas y un solo servidor, donde el rastreador web es el servidor y los sitios web son las colas. Las modificaciones de página son la llegada de los clientes, y los tiempos de conmutación son el intervalo entre los accesos a una página de un mismo sitio web. Según este modelo, el tiempo medio de espera de un cliente en el sistema de sondeo es equivalente a la edad media del rastreador web. [ 33 ]
El objetivo del rastreador es mantener la actualidad promedio de las páginas en su colección lo más alta posible, o bien, mantener la antigüedad promedio de las páginas lo más baja posible. Estos objetivos no son equivalentes: en el primer caso, al rastreador solo le interesa cuántas páginas están desactualizadas, mientras que en el segundo caso, le interesa la antigüedad de las copias locales de las páginas.

Cho y García-Molina estudiaron dos políticas de revisión sencillas: [ 34 ]
- Política uniforme: Esto implica revisar todas las páginas de la colección con la misma frecuencia, independientemente de su ritmo de cambio.
- Política proporcional: Consiste en volver a visitar con mayor frecuencia las páginas que cambian más a menudo. La frecuencia de visita es directamente proporcional a la frecuencia de cambio (estimada).
En ambos casos, el orden de rastreo repetido de las páginas puede realizarse de forma aleatoria o en un orden fijo.
Cho y García-Molina demostraron el sorprendente resultado de que, en términos de frescura promedio, la política uniforme supera a la política proporcional tanto en una web simulada como en un rastreo web real. Intuitivamente, el razonamiento es que, dado que los rastreadores web tienen un límite en la cantidad de páginas que pueden rastrear en un período de tiempo determinado, (1) asignarán demasiados rastreos nuevos a páginas que cambian rápidamente a expensas de las que se actualizan con menos frecuencia, y (2) la frescura de las páginas que cambian rápidamente dura un período más corto que la de las que se actualizan con menos frecuencia. En otras palabras, una política proporcional asigna más recursos al rastreo de páginas que se actualizan con frecuencia, pero experimenta un menor tiempo total de frescura en ellas.
Para mejorar la frescura, el rastreador debe penalizar los elementos que cambian con demasiada frecuencia. [ 35 ] La política de revisita óptima no es ni la política uniforme ni la política proporcional. El método óptimo para mantener una frescura promedio alta incluye ignorar las páginas que cambian con demasiada frecuencia, y el óptimo para mantener una edad promedio baja es usar frecuencias de acceso que aumentan monótonamente (y sublinealmente) con la tasa de cambio de cada página. En ambos casos, el óptimo está más cerca de la política uniforme que de la política proporcional: como señalan Coffman et al. , "para minimizar el tiempo de obsolescencia esperado, los accesos a cualquier página en particular deben mantenerse lo más uniformemente espaciados posible". [ 33 ] Las fórmulas explícitas para la política de revisita no son alcanzables en general, pero se obtienen numéricamente, ya que dependen de la distribución de los cambios de página. Cho y García-Molina muestran que la distribución exponencial es un buen ajuste para describir los cambios de página, [ 35 ] mientras que Ipeirotis et al. muestran cómo usar herramientas estadísticas para descubrir parámetros que afectan esta distribución. [ 36 ] Las políticas de revisita consideradas aquí consideran todas las páginas como homogéneas en términos de calidad ("todas las páginas en la Web valen lo mismo"), algo que no es un escenario realista, por lo que se debería incluir más información sobre la calidad de la página web para lograr una mejor política de rastreo.
Política de cortesía
Los rastreadores pueden recuperar datos mucho más rápido y con mayor profundidad que los usuarios, por lo que pueden afectar gravemente el rendimiento de un sitio web. Si un solo rastreador realiza múltiples solicitudes por segundo o descarga archivos grandes, un servidor puede tener dificultades para procesar las solicitudes de varios rastreadores simultáneamente.
Como señaló Koster, el uso de rastreadores web es útil para varias tareas, pero tiene un costo para la comunidad en general. [ 37 ] Los costos del uso de rastreadores web incluyen:
- recursos de red, ya que los rastreadores requieren un ancho de banda considerable y operan con un alto grado de paralelismo durante un largo período de tiempo;
- sobrecarga del servidor, especialmente si la frecuencia de accesos a un servidor determinado es demasiado alta;
- Rastreadores mal escritos, que pueden colapsar servidores o enrutadores, o que descargan páginas que no pueden manejar; y
- Rastreadores personales que, si son desplegados por demasiados usuarios, pueden interrumpir las redes y los servidores web.
Una solución parcial a estos problemas es el protocolo de exclusión de robots , también conocido como protocolo robots.txt, que es un estándar para que los administradores indiquen a qué partes de sus servidores web no deben acceder los rastreadores. [ 38 ] Este estándar no incluye una sugerencia para el intervalo de visitas al mismo servidor, aunque este intervalo es la forma más efectiva de evitar la sobrecarga del servidor. Recientemente, los motores de búsqueda comerciales como Google , Ask Jeeves , MSN y Yahoo! Search pueden usar un parámetro adicional "Crawl-delay:" en el archivo robots.txt para indicar la cantidad de segundos de retraso entre solicitudes .
El primer intervalo propuesto entre cargas sucesivas de páginas fue de 60 segundos. [ 39 ] Sin embargo, si las páginas se descargaran a esta velocidad desde un sitio web con más de 100 000 páginas a través de una conexión perfecta con latencia cero y ancho de banda infinito, se tardaría más de 2 meses en descargar solo ese sitio web completo; además, solo se utilizaría una fracción de los recursos de ese servidor web.
Cho utiliza 10 segundos como intervalo para los accesos, [ 34 ] y el rastreador WIRE utiliza 15 segundos como valor predeterminado. [ 40 ] El rastreador MercatorWeb sigue una política de cortesía adaptativa: si tardó t segundos en descargar un documento de un servidor determinado, el rastreador espera 10 t segundos antes de descargar la siguiente página. [ 41 ] Dill et al. utilizan 1 segundo. [ 42 ]
Para quienes utilizan rastreadores web con fines de investigación, es necesario un análisis de costo-beneficio más detallado y se deben tener en cuenta consideraciones éticas al decidir dónde rastrear y a qué velocidad hacerlo. [ 43 ]
La evidencia anecdótica de los registros de acceso muestra que los intervalos de acceso de los rastreadores conocidos varían entre 20 segundos y 3-4 minutos. Cabe destacar que, incluso siendo muy cortés y tomando todas las precauciones para evitar sobrecargar los servidores web, se reciben algunas quejas de los administradores de servidores web. Sergey Brin y Larry Page señalaron en 1998: «...ejecutar un rastreador que se conecta a más de medio millón de servidores... genera una cantidad considerable de correos electrónicos y llamadas telefónicas. Debido a la gran cantidad de personas que se conectan, siempre hay quienes no saben qué es un rastreador, porque es el primero que ven». [ 44 ]
Política de paralelización
Arquitecturas

Un rastreador web no solo debe tener una buena estrategia de rastreo, como se mencionó en las secciones anteriores, sino que también debe tener una arquitectura altamente optimizada.
Shkapenyuk y Suel observaron que: [ 45 ]
Si bien es relativamente fácil crear un rastreador lento que descargue unas pocas páginas por segundo durante un corto período de tiempo, construir un sistema de alto rendimiento que pueda descargar cientos de millones de páginas durante varias semanas presenta una serie de desafíos en el diseño del sistema, la eficiencia de E/S y de la red, así como la robustez y la capacidad de gestión.
Los rastreadores web son una parte fundamental de los motores de búsqueda, y los detalles sobre sus algoritmos y arquitectura se mantienen como secretos comerciales. Cuando se publican los diseños de los rastreadores, a menudo falta información importante que impide que otros reproduzcan el trabajo. También existe una creciente preocupación por el " spam en los motores de búsqueda ", lo que impide que los principales motores de búsqueda publiquen sus algoritmos de clasificación.
Seguridad
Si bien la mayoría de los propietarios de sitios web desean que sus páginas se indexen de la forma más amplia posible para tener una fuerte presencia en los motores de búsqueda , el rastreo web también puede tener consecuencias no deseadas y provocar una vulneración de la seguridad o una filtración de datos si un motor de búsqueda indexa recursos que no deberían estar disponibles públicamente, o páginas que revelen versiones potencialmente vulnerables de software.
Además de las recomendaciones estándar de seguridad para aplicaciones web, los propietarios de sitios web pueden reducir su exposición a ataques informáticos oportunistas permitiendo que los motores de búsqueda indexen únicamente las partes públicas de sus sitios web (mediante robots.txt ) y bloqueando explícitamente la indexación de las partes transaccionales (páginas de inicio de sesión, páginas privadas, etc.).
Identificación de la oruga
Los rastreadores web suelen identificarse ante un servidor web mediante el campo User-agent de una solicitud HTTP . Los administradores de sitios web suelen examinar el registro de sus servidores y usar este campo para determinar qué rastreadores han visitado el servidor y con qué frecuencia. El campo User-agent puede incluir una URL donde el administrador puede encontrar más información sobre el rastreador. Examinar el registro del servidor web es una tarea tediosa, por lo que algunos administradores utilizan herramientas para identificar, rastrear y verificar los rastreadores web. Es poco probable que los spambots y otros rastreadores web maliciosos incluyan información de identificación en el campo User-agent, o bien pueden enmascarar su identidad haciéndose pasar por un navegador u otro rastreador conocido.
Los administradores de sitios web prefieren que los rastreadores web se identifiquen para poder contactar al propietario si es necesario. En algunos casos, los rastreadores pueden quedar atrapados accidentalmente en una trampa o sobrecargar un servidor web con solicitudes, y el propietario necesita detenerlos. La identificación también es útil para los administradores que desean saber cuándo pueden esperar que sus páginas web sean indexadas por un motor de búsqueda específico .
Explorando la web profunda
Una gran cantidad de páginas web se encuentran en la web profunda o invisible . [ 46 ] Estas páginas generalmente solo son accesibles mediante consultas a una base de datos, y los rastreadores habituales no pueden encontrarlas si no hay enlaces que apunten a ellas. El protocolo Sitemaps de Google y mod oai [ 47 ] están diseñados para permitir el descubrimiento de estos recursos de la web profunda .
El rastreo web profundo también multiplica la cantidad de enlaces web que se deben rastrear. Algunos rastreadores solo toman algunas de las URL . En algunos casos, como en el de Googlebot , el rastreo web se realiza sobre todo el texto contenido en el hipervínculo, las etiquetas o el texto.<a href="URL">
Se pueden adoptar enfoques estratégicos para acceder al contenido de la web profunda. Mediante una técnica denominada extracción de datos de pantalla , se puede personalizar un software especializado para consultar de forma automática y repetida un formulario web determinado con el fin de agregar los datos resultantes. Este software puede utilizarse para abarcar múltiples formularios web en varios sitios web. Los datos extraídos de los resultados del envío de un formulario web pueden utilizarse como entrada para otro formulario web, estableciendo así una continuidad en la web profunda que no es posible con los rastreadores web tradicionales. [ 48 ]
Las páginas creadas con AJAX se encuentran entre las que causan problemas a los rastreadores web. Google ha propuesto un formato de llamadas AJAX que su bot puede reconocer e indexar. [ 49 ]
Rastreadores visuales frente a rastreadores programáticos
En internet existen varios programas de rastreo web visual que exploran páginas y organizan los datos en columnas y filas según las necesidades del usuario. Una de las principales diferencias entre un rastreador clásico y uno visual radica en el nivel de conocimientos de programación necesarios para configurarlo. La última generación de rastreadores visuales elimina la mayor parte de la necesidad de programar e iniciar el rastreo de datos web.
El método de rastreo visual se basa en que el usuario "enseñe" a una herramienta de rastreo, la cual luego sigue patrones en fuentes de datos semiestructuradas. El método predominante para entrenar un rastreador visual consiste en resaltar datos en un navegador y entrenar columnas y filas. Si bien la tecnología no es nueva (por ejemplo, fue la base de Needlebase, adquirida por Google como parte de la compra de ITA Labs [ 50 ] ), existe un crecimiento continuo y una mayor inversión en este campo por parte de inversores y usuarios finales.
Lista de rastreadores web
A continuación se presenta una lista de arquitecturas de rastreadores publicadas para rastreadores de propósito general (excluyendo los rastreadores web especializados), con una breve descripción que incluye los nombres dados a los diferentes componentes y características destacadas:
Rastreadores web históricos
- WolfBot era un robot oruga con multitud de hilos de ejecución, construido en 2001 por Mani Singh, graduado en Ingeniería Civil por la Universidad de California en Davis.
- World Wide Web Worm era un rastreador web que se utilizaba para crear un índice simple de títulos de documentos y URL. El índice se podía consultar mediante el comando grepde Unix .
- Yahoo! Slurp era el nombre del rastreador web de Yahoo! hasta que Yahoo! contrató a Microsoft para usar Bingbot en su lugar.
Rastreadores web internos
- Applebot es el rastreador web de Apple . Es compatible con Siri y otros productos. [ 51 ]
- Bingbot es el nombre del rastreador web Bing de Microsoft . Reemplazó a Msnbot .
- Baiduspider es el rastreador web de Baidu .
- DuckDuckBot es el rastreador web de DuckDuckGo .
- Googlebot se describe con cierto detalle, pero la referencia se centra únicamente en una versión temprana de su arquitectura, escrita en C++ y Python . El rastreador estaba integrado con el proceso de indexación, ya que el análisis de texto se realizaba tanto para la indexación de texto completo como para la extracción de URL. Existe un servidor de URL que envía listas de URL que deben ser recuperadas por varios procesos de rastreo. Durante el análisis, las URL encontradas se enviaban a un servidor de URL que comprobaba si ya se habían visto anteriormente. En caso contrario, la URL se añadía a la cola del servidor de URL.
- WebCrawler se utilizó para crear el primer índice de texto completo disponible públicamente de un subconjunto de la Web. Se basaba en lib-WWW para descargar páginas y en otro programa para analizar y ordenar las URL, permitiendo así una exploración en amplitud del grafo web. También incluía un rastreador en tiempo real que seguía los enlaces según la similitud del texto ancla con la consulta proporcionada.
- WebFountain es un rastreador distribuido y modular similar a Mercator, pero escrito en C++.
- Xenon es un rastreador web utilizado por las autoridades tributarias gubernamentales para detectar fraudes. [ 52 ] [ 53 ]
Rastreadores web comerciales
Los siguientes rastreadores web están disponibles a un precio:
- Diffbot : rastreador web programático general, disponible como API.
- SortSite : rastreador para analizar sitios web, disponible para Windows y Mac OS.
- Swiftbot: el rastreador web de Swiftype , disponible como software como servicio.
- Aleph Search: un rastreador web que permite la recopilación masiva de datos con alta escalabilidad.
Rastreadores de código abierto
- Apache Nutch es un rastreador web altamente extensible y escalable, escrito en Java y distribuido bajo la licencia Apache . Está basado en Apache Hadoop y puede utilizarse con Apache Solr o Elasticsearch .
- Grub era un rastreador web distribuido de código abierto que utilizaba Wikia Search .
- Heritrix es el rastreador de calidad de archivo de Internet Archive , diseñado para archivar instantáneas periódicas de una gran parte de la Web. Fue escrito en Java .
- ht://Dig incluye un rastreador web en su motor de indexación.
- HTTrack utiliza un rastreador web para crear una copia de un sitio web que permite su visualización sin conexión. Está escrito en C y se distribuye bajo la licencia GPL.
- Norconex Web Crawler es un rastreador web altamente extensible escrito en Java y distribuido bajo la licencia Apache . Puede utilizarse con numerosos repositorios, como Apache Solr , Elasticsearch , Microsoft Azure Cognitive Search , Amazon CloudSearch y otros.
- mnoGoSearch era un rastreador, indexador y motor de búsqueda escrito en C y con licencia GPL, que estuvo en funcionamiento desde el año 2000 hasta el 2022.
- Open Search Server es un motor de búsqueda y un software de rastreo web distribuido bajo la licencia GPL.
- Scrapy , un framework de rastreo web de código abierto, escrito en Python (con licencia BSD ).
- Seeks , un motor de búsqueda distribuido gratuito (con licencia AGPL ).
- StormCrawler , una colección de recursos para crear rastreadores web escalables y de baja latencia en Apache Storm (licencia Apache).
- tkWWW Robot , un rastreador basado en el navegador web tkWWW (con licencia GPL).
- GNU Wget es un rastreador web que se ejecuta desde la línea de comandos , escrito en C y distribuido bajo la licencia GPL . Se utiliza habitualmente para replicar sitios web y FTP.
- YaCy , un motor de búsqueda distribuido gratuito, construido sobre los principios de las redes peer-to-peer (con licencia GPL).
Véase también
Referencias
- ↑ "Rastreadores web: Navegando por la web" . Archivado del original el 6 de diciembre de 2021.
- ↑ Lawrence, Steve; Giles, C. Lee (1998). "Buscando en la World Wide Web". Science . 280 (5360): 98– 100. doi : 10.1126/science.280.5360.98 .
- ↑ Lawrence, Steve; Giles, C. Lee (1999). "Accesibilidad de la información en la web". Nature . 400 (6740): 107– 109. doi : 10.1038/21987 .
- ↑ "Guía detallada sobre cómo funciona la Búsqueda de Google" . Google Search Central . Google . Consultado el 11 de junio de 2026 .
- ↑ Spetka, Scott. "El robot TkWWW: más allá de la navegación" . NCSA . Archivado del original el 3 de septiembre de 2004. Recuperado el 21 de noviembre de 2010 .
- ↑ Kobayashi, M. y Takeda, K. (2000). "Recuperación de información en la web". ACM Computing Surveys . 32 (2): 144– 173. CiteSeerX 10.1.1.126.6094 . doi : 10.1145/358923.358934 . S2CID 3710903 .
- ↑ Ver definición de scutter en la wiki del Proyecto FOAF. Archivado el 13 de diciembre de 2009 en la Wayback Machine.
- ↑ Masanès, Julien (15 de febrero de 2007). Archivo web . Springer. pág. 1. ISBN 978-3-54046332-0Consultado el 24 de abril de 2014 .
- ↑ Edwards, J.; McCurley, KS; y Tomlin, JA (2001). «Un modelo adaptativo para optimizar el rendimiento de un rastreador web incremental». Actas de la 10.ª conferencia internacional sobre la World Wide Web . págs. 106–113 . CiteSeerX 10.1.1.1018.1506 . doi : 10.1145/371920.371960 . ISBN 978-1581133486. S2CID 10316730 . Archivado del original el 25 de junio de 2014 . Recuperado el 25 de enero de 2007 .
{{cite book}}: CS1 maint: varios nombres: lista de autores ( enlace ) - ↑ Castillo, Carlos (2004). Rastreo web efectivo (tesis doctoral). Universidad de Chile . Recuperado el 3 de agosto de 2010 .
- ↑ Gulls, A.; A. Signori (2005). "La web indexable tiene más de 11.500 millones de páginas". Sesiones temáticas especiales y pósteres de la 14.ª conferencia internacional sobre la World Wide Web . ACM Press. pp. 902–903 . doi : 10.1145/1062745.1062789 .
- ↑ Lawrence, Steve; C. Lee Giles (8 de julio de 1999). "Accesibilidad de la información en la web" . Nature . 400 (6740): 107–9 . Bibcode : 1999Natur.400..107L . doi : 10.1038/21987 . PMID 10428673. S2CID 4347646 .
- ↑ Cho, J.; Garcia-Molina, H.; Page, L. (abril de 1998). "Calorimetría en física de altas energías" . Séptima Conferencia Internacional World-Wide Web . Brisbane, Australia. doi : 10.1142/3725 . ISBN 978-981-02-3400-3Consultado el 23 de marzo de 2009 .
- ↑ Cho, Junghoo, "Rastreando la web: Descubrimiento y mantenimiento de datos web a gran escala" Archivado el 21 de diciembre de 2012 en Wayback Machine , tesis doctoral, Departamento de Ciencias de la Computación, Universidad de Stanford, noviembre de 2001.
- ↑ Najork, Marc y Janet L. Wiener. «El rastreo en amplitud produce páginas de alta calidad». Archivado el 24 de diciembre de 2017 en Wayback Machine. En: Actas de la Décima Conferencia sobre la World Wide Web , páginas 114-118, Hong Kong, mayo de 2001. Elsevier Science.
- ↑ Abiteboul, Serge; Mihai Preda; Gregory Cobena (2003). «Cálculo adaptativo de la importancia de las páginas en línea» . Actas de la 12.ª conferencia internacional sobre la World Wide Web . Budapest, Hungría: ACM. pp. 280–290 . doi : 10.1145/775152.775192 . ISBN 1-58113-680-3Archivado del original el 20 de marzo de 2008. Consultado el 22 de marzo de 2009 .
- ↑ Boldi, Paolo; Bruno Codenotti; Massimo Santini; Sebastiano Vigna (2004). "UbiCrawler: un rastreador web escalable totalmente distribuido" (PDF) . Software: Practice and Experience . 34 (8): 711–726 . CiteSeerX 10.1.1.2.5538 . doi : 10.1002/spe.587 . S2CID 325714. Archivado del original (PDF) el 20 de marzo de 2009. Recuperado el 23 de marzo de 2009 .
- ↑ Boldi, Paolo; Massimo Santini; Sebastiano Vigna (2004). "Haz lo peor para obtener lo mejor: efectos paradójicos en los cálculos incrementales de PageRank" (PDF) . Algoritmos y modelos para el grafo web . Notas de clase en informática. Vol. 3243. págs. 168–180 . doi : 10.1007/978-3-540-30216-2_14 . ISBN 978-3-540-23427-2Archivado del original (PDF) el 1 de octubre de 2005. Consultado el 23 de marzo de 2009 .
- ↑ Baeza-Yates, R.; Castillo, C.; Marin, M. y Rodriguez, A. (2005). «Explorando un país: Mejores estrategias que la búsqueda en amplitud para la ordenación de páginas web». En: Actas de la sección de Experiencia Industrial y Práctica de la 14.ª conferencia sobre la World Wide Web , páginas 864-872, Chiba, Japón. ACM Press.
- ↑ Shervin Daneshpajouh, Mojtaba Mohammadi Nasiri, Mohammad Ghodsi, Un algoritmo rápido basado en la comunidad para generar conjuntos de semillas de rastreadores . En: Actas de la 4.ª Conferencia Internacional sobre Sistemas y Tecnologías de Información Web ( Webist -2008), Funchal, Portugal, mayo de 2008.
- ↑ Pant, Gautam; Srinivasan, Padmini; Menczer, Filippo (2004). «Explorando la Web» (PDF) . En Levene, Mark; Poulovassilis, Alexandra (eds.). Dinámica de la Web: Adaptación al cambio en el contenido, el tamaño, la topología y el uso . Springer. pp. 153–178 . ISBN 978-3-540-40676-1Archivado del original (PDF) el 20 de marzo de 2009. Consultado el 9 de mayo de 2006 .
- ↑ Cothey, Viv (2004). "Fiabilidad del rastreo web" (PDF) . Journal of the American Society for Information Science and Technology . 55 (14): 1228– 1238. CiteSeerX 10.1.1.117.185 . doi : 10.1002/asi.20078 . Archivado del original (PDF) el 22 de septiembre de 2017. Recuperado el 26 de octubre de 2017 .
- ↑ Menczer, F. (1997). ARACHNID: Agentes de recuperación adaptativos que eligen vecindarios heurísticos para el descubrimiento de información. Archivado el 21 de diciembre de 2012 en Wayback Machine . En D. Fisher, ed., Machine Learning: Actas de la 14.ª Conferencia Internacional (ICML97). Morgan Kaufmann
- ↑ Menczer, F. y Belew, RK (1998). Agentes de información adaptativos en entornos textuales distribuidos. Archivado el 21 de diciembre de 2012 en Wayback Machine . En K. Sycara y M. Wooldridge (eds.) Actas de la 2.ª Conferencia Internacional sobre Agentes Autónomos (Agents '98). ACM Press
- ↑ Chakrabarti, Soumen; Van Den Berg, Martin; Dom, Byron (1999). "Rastreo focalizado: Un nuevo enfoque para el descubrimiento de recursos web específicos por tema" (PDF) . Computer Networks . 31 ( 11–16 ): 1623–1640 . doi : 10.1016/s1389-1286(99)00052-3 . Archivado del original (PDF) el 17 de marzo de 2004.
- ↑ Pinkerton, B. (1994). Encontrar lo que la gente quiere: Experiencias con WebCrawler . En Actas de la Primera Conferencia Mundial de la Web, Ginebra, Suiza.
- ↑ Diligenti, M., Coetzee, F., Lawrence, S., Giles, CL y Gori, M. (2000). Rastreo enfocado mediante grafos de contexto . En Actas de la 26.ª Conferencia Internacional sobre Bases de Datos Muy Grandes (VLDB), páginas 527-534, El Cairo, Egipto.
- ↑ Wu, Jian; Teregowda, Pradeep; Khabsa, Madian; Carman, Stephen; Jordan, Douglas; San Pedro Wandelmer, Jose; Lu, Xin; Mitra, Prasenjit; Giles, C. Lee (2012). "Middleware de rastreo web para bibliotecas digitales de motores de búsqueda". Actas del duodécimo taller internacional sobre gestión de información y datos web - WIDM '12 . p. 57. doi : 10.1145/2389936.2389949 . ISBN 9781450317207. S2CID 18513666 .
- ↑ Wu, Jian; Teregowda, Pradeep; Ramírez, Juan Pablo Fernández; Mitra, Prasenjit; Zheng, Shuyi; Giles, C. Lee (2012). "La evolución de una estrategia de rastreo para un motor de búsqueda de documentos académicos". Actas de la 3.ª Conferencia Anual de Ciencia Web de la ACM - Web Sci '12 . págs. 340–343 . doi : 10.1145/2380718.2380762 . ISBN 9781450312288. S2CID 16718130 .
- ↑ Dong, Hai; Hussain, Farookh Khadeer; Chang, Elizabeth (2009). "Estado del arte en rastreadores semánticos enfocados" . Ciencia computacional y sus aplicaciones – ICCSA 2009. Notas de clase en ciencias de la computación. Vol. 5593. págs. 910–924 . doi : 10.1007/978-3-642-02457-3_74 . hdl : 20.500.11937/48288 . ISBN 978-3-642-02456-6.
- ↑ Dong, Hai; Hussain, Farookh Khadeer (2013). "SOF: Un rastreador enfocado basado en aprendizaje de ontologías semisupervisado" . Concurrency and Computation: Practice and Experience . 25 (12): 1755– 1770. doi : 10.1002/cpe.2980 . S2CID 205690364 .
- ↑ Junghoo Cho; Hector Garcia-Molina (2000). "Sincronización de una base de datos para mejorar su actualización" (PDF) . Actas de la conferencia internacional ACM SIGMOD 2000 sobre gestión de datos . Dallas, Texas, Estados Unidos: ACM. pp. 117–128 . doi : 10.1145/342009.335391 . ISBN 1-58113-217-4Consultado el 23 de marzo de 2009 .
- 1 2 E. G. Coffman Jr; Zhen Liu; Richard R. Weber (1998). "Programación óptima de robots para motores de búsqueda web". Journal of Scheduling . 1 (1): 15– 29. CiteSeerX 10.1.1.36.6087 . doi : 10.1002/(SICI)1099-1425(199806)1:1 < 15::AID-JOS3 > 3.0.CO ; 2-K .
- 1 2 Cho, Junghoo; Garcia-Molina, Hector (2003). "Políticas efectivas de actualización de páginas para rastreadores web". ACM Transactions on Database Systems . 28 (4): 390– 426. doi : 10.1145/958942.958945 . S2CID 147958 .
- 1 2 Junghoo Cho; Hector Garcia-Molina (2003). "Estimación de la frecuencia de cambio". ACM Transactions on Internet Technology . 3 (3): 256– 290. CiteSeerX 10.1.1.59.5877 . doi : 10.1145/857166.857170 . S2CID 9362566 .
- ↑ Ipeirotis, P., Ntoulas, A., Cho, J., Gravano, L. (2005) Modelado y gestión de cambios de contenido en bases de datos de texto. Archivado el 5 de septiembre de 2005 en Wayback Machine . En Actas de la 21.ª Conferencia Internacional IEEE sobre Ingeniería de Datos, páginas 606-617, abril de 2005, Tokio.
- ↑ Koster, M. (1995). Robots en la web: ¿amenaza o beneficio? ConneXions, 9(4).
- ↑ Koster, M. (1996). Un estándar para la exclusión de robots. Archivado el 7 de noviembre de 2007 en Wayback Machine .
- ↑ Koster, M. (1993). Directrices para escritores de robots. Archivado el 22 de abril de 2005 en Wayback Machine .
- ↑ Baeza-Yates, R. y Castillo, C. (2002). Equilibrio entre volumen, calidad y actualidad en el rastreo web . En Sistemas de computación blanda : diseño, gestión y aplicaciones, páginas 565–572, Santiago, Chile. IOS Press Amsterdam.
- ↑ Heydon, Allan; Najork, Marc (26 de junio de 1999). "Mercator: Un rastreador web escalable y extensible" (PDF) . Archivado del original (PDF) el 19 de febrero de 2006. Recuperado el 22 de marzo de 2009 .
{{cite journal}}: Para citar una revista se requiere|journal=( ayuda ) - ↑ Dill, S.; Kumar, R.; Mccurley, KS; Rajagopalan, S.; Sivakumar, D.; Tomkins, A. (2002). "Autosimilitud en la web" (PDF) . ACM Transactions on Internet Technology . 2 (3): 205– 223. doi : 10.1145/572326.572328 . S2CID 6416041 .
- ↑ M. Thelwall; D. Stuart (2006). "Revisión de la ética del rastreo web: Costo, privacidad y denegación de servicio" . Journal of the American Society for Information Science and Technology . 57 (13): 1771– 1779. doi : 10.1002/asi.20388 . Archivado del original el 7 de marzo de 2008. Recuperado el 28 de enero de 2008 .
- ↑ Brin, Sergey; Page, Lawrence (1998). "La anatomía de un motor de búsqueda web hipertextual a gran escala" . Computer Networks and ISDN Systems . 30 ( 1–7 ): 107–117 . doi : 10.1016/s0169-7552(98)00110-x . S2CID 7587743 .
- ↑ Shkapenyuk, V. y Suel, T. (2002). Diseño e implementación de un rastreador web distribuido de alto rendimiento. Archivado el 1 de octubre de 2005 en Wayback Machine . En Actas de la 18.ª Conferencia Internacional sobre Ingeniería de Datos (ICDE), páginas 357-368, San José, California. IEEE CS Press.
- ↑ Shestakov, Denis (2008). Interfaces de búsqueda en la web: consulta y caracterización. Archivado el 6 de julio de 2014 en Wayback Machine . Disertaciones doctorales TUCS 104, Universidad de Turku.
- ↑ Michael L Nelson; Herbert Van de Sompel; Xiaoming Liu; Terry L Harrison; Nathan McFarland (24 de marzo de 2005). "mod_oai: Un módulo de Apache para la recolección de metadatos": cs/0503069. arXiv : cs/0503069 . Bibcode : 2005cs........3069N .
{{cite journal}}: Para citar una revista se requiere|journal=( ayuda ) - ↑ Shestakov, Denis; Bhowmick, Sourav S.; Lim, Ee-Peng (2005). "DEQUE: Consultando la Deep Web" (PDF) . Data & Knowledge Engineering . 52 (3): 273– 311. doi : 10.1016/s0169-023x(04)00107-7 .
- ↑ "Rastreo AJAX: Guía para webmasters y desarrolladores" . Archivado del original el 6 de marzo de 2013. Consultado el 17 de marzo de 2013 .
- ↑ ITA Labs "Adquisición de ITA Labs" Archivado el 18 de marzo de 2014 en Wayback Machine el 20 de abril de 2011 a la 1:28 a. m.
- ↑ "Acerca de Applebot" . Apple Inc. Consultado el 18 de octubre de 2021 .
- ↑ Norton, Quinn (25 de enero de 2007). "Los recaudadores de impuestos envían a las arañas" . Negocios. Wired . Archivado del original el 22 de diciembre de 2016. Recuperado el 13 de octubre de 2017 .
- ↑ «Iniciativa de rastreo web Xenon: resumen de la evaluación de impacto en la privacidad (PIA)» . Ottawa: Gobierno de Canadá. 11 de abril de 2017. Archivado del original el 25 de septiembre de 2017. Consultado el 13 de octubre de 2017 .
Lecturas adicionales
- Cho, Junghoo, "Proyecto de rastreo web" Archivado el 7 de julio de 2013 en Wayback Machine , Departamento de Ciencias de la Computación de UCLA.
- Historia de los motores de búsqueda , de Wiley
- WIVET es un proyecto de evaluación comparativa de OWASP , cuyo objetivo es medir si un rastreador web puede identificar todos los hipervínculos en un sitio web objetivo.
- Shestakov, Denis, "Desafíos actuales en el rastreo web" y "Rastreo web inteligente" , diapositivas para tutoriales presentados en ICWE'13 y WI-IAT'13.
- Software de motores de búsqueda
- Rastreadores web
- algoritmos de búsqueda en Internet