
Servicios externos:
• Laboratorio Digital • Servicio de Alerta • Hipertext.net |
Citación recomendada: Lluís Codina.
Artículo F911. Spiders de buscadores: características y funcionamiento [en línea]. En Cristòfol Rovira; Lluís Codina (dir.). Máster en Buscadores. Barcelona: Área de Ciencias de la Documentación. Departamento de Periodismo y de Comunicación Audiovisual. Universidad Pompeu Fabra, 2007.
1. Introducción 2. Contexto 3. Robots 4. Conclusiones 5. BibliografíaNota sobre la evaluación: de forma intercalada en el texto de este artículo encontrará el enunciado de diversas actividades. Para superar esta unidad didáctica deberá realizar estas actividades redactando un informe en el que se incluyan comentarios y, en caso que sea pertinente, una captura de pantalla de cada actividad para ilustrar su realización. Para entregar este informe deberá crear un solo documento para todos las actividades de esta unidad didáctica en formato OpenOffice o Word y de un máximo de 500 Kb. A continuación podrá usar el espacio de entrega y notificación perteneciente a este grupo de unidades didácticas. La realización de forma satisfactoria de este ejercicio implicará la obtención de 0,75 créditos.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
... <a href:”http:// www.ejemplo.ar/index.htm > Delegación en Argentina </a> ... |
Que, a su vez, genera la nueva URL:
www.ejemplo.ar/index.htm
Por tanto, debemos tener claro que, para el spider un documento es siempre un enlace (técnicamente, una URL), y por tanto el primer componente del spider es, necesariamente un sistema que le permita gestionar enlaces: a saber, cómo adquirir enlaces y cómo gestionarlos de manera que, por ejemplo, otorgue prioridades sobre qué enlace se visita primero, qué enlaces (páginas) se visitan más a menudo, cómo evitar hacer el mismo trabajo varias veces (por ejemplo, visitando la misma página en intervalos de tiempo muy cortos).
Por otro lado, como los motores de búsqueda generalistas aspiran a “controlar” toda la Web, su principal preocupación es de dónde obtener los enlaces para alimentar a su spider.
Actualmente, existen dos formas por las cuales el gestor de URLs de un spider obtiene sus enlaces:
Enlaces de páginas web analizadas Hemos visto un ejemplo según el cual, el hecho de que un spider entre en www.ejemplo.com proporciona al spider una lista de enlaces adicionales de dos tipos: enlaces del mismo sitio, que analizará de forma más o menos interactiva si el sitio no es muy grande, y enlaces a nuevos sitios, que añadirá a su lista de nuevos enlaces para visitar. Podríamos preguntarnos de dónde procedieron los primeros enlaces. La respuesta es fácil: cada vez que aparece un nuevo motor de búsqueda, éste inicia sus actividades necesariamente con una lista más o menos larga de URL que han introducido en el spider los creadores del buscador. La lista puede tener miles o puede tener millones de URL en función del trabajo previo de los desarrolladores del buscador, los recursos para obtener esas URL, etc.
Enlaces proporcionados (submitted URLs) Los gestores y responsable de sitios web pueden rellenar los formularios ad-hoc de los principales motores de búsqueda para dar a conocer (dar de alta), al menos, la URL de la página principal de su sitio (y en caso necesario, las URLs de las principales secciones del mismo). A su vez, existen dos procedimientos por los cuales se pueden enviar altas a un motor de búsqueda:
Gratuito
Mediante pago
En la forma gratuita, el responde de un sitio web accede a un formulario específico del motor y entra los datos (típicamente, la URL de la página principal) del sitio sin necesidad de pago ni desembolso alguno. En cambio, en la fórmula de pago, es necesario realizar un desembolso (de entre 10 y 50 euros) previo para que el motor realice el alta de la página principal del sitio o de otras páginas adicionales del sitio.
En el primer caso, en compensación a la ventaja evidente de la gratuidad (y de la ausencia de gestiones) se encuentra el hecho de que el motor de búsqueda no garantiza resultados: ni el plazo para proceder al alta, que puede demorarse hasta un mes, ni la exhaustividad del análisis del sitio, del que pueden quedar páginas sin indizar, ni la frecuencia de actualización del índice del sitio.
En el segundo caso, a cambio del desembolso, el motor suele garantizar la inclusión en un plazo breve (típicamente 48 horas), un análisis más completo del sitio y una mayor frecuencia de actualización del sitio.
Google nunca ha practicado la modalidad de pago por inclusión, mientras que Yahoo la ha practicado en ocasiones para su directorio y actualmente es una opción voluntaria para su motor de búsqueda en algunos mercados (por ejemplo, en el momento de preparar esta unidad no estaba disponible en España).
Actividad 3: Vaya a Google, entre en la página principal de ayuda y localice la función correspondiente a dar de alta un sitio. Compruebe si debe realizarse algún desembolso o, por el contrario, es gratuita.
En los años noventa, los spiders representaron un auténtico problema para los servidores de sitios web. En aquella década había disponible solamente una fracción ínfima del ancho de banda del que se dispone hoy en la mayor parte del mundo. Además, el software y el hardware de los servidores proporcionaba también un menor rendimiento.
Por todo ello, los spiders de los motores podían llegar a causar graves problemas a los servidores. Las insistentes visitas de un spider para descargar los documentos de un sitio podían provocar un mal rendimiento (o el colapso momentáneo) del servidor de cara a los usuarios “reales” del sitio. Además, pronto los administradores de los sitios descubrieron hasta qué punto podía resultar indiscreto subir documentos al servidor o intentar mantener directorios enteros del sitio para colocar información reservada, ya que los spiders descargaban (y mandaban a indizar) cualquier cosa que encontrasen en el servidor cumpliendo su misión de robots disciplinados y sistemáticos.
Por todo ello, se desarrolló el llamado “Protocolo de exclusión de robots”, bajo cuyo pomposo nombre se escondía un simple procedimiento (en plena vigencia) que permite al administrador de un sitio excluir el análisis de los spiders (robots) de ciertos directorios o de todo el sitio; o prohibir a robots concretos el acceso al sitio.
Por un lado, ya no padecemos la carestía de ancho de banda de los años 90, y por otro lado, los programadores de los spiders han creado una generación de robots mucha más eficiente que genera menos carga para los servidores. Sin embargo, el protocolo tiene plena vigencia aunque solamente sea por la posibilidad de excluir directorios enteros del servidor de la curiosidad de los robots (spiders) a voluntad del administrador del sitio.
El funcionamiento del protocolo es de extrema sencillez. Las instrucciones del mismo se sitúan en un archivo de texto (de nombre robots.txt ) que, a su vez, se coloca en el directorio principal (directorio raíz) del sitio.
Se supone que los robots (spiders en este caso) deben leer el archivo antes de empezar a interactuar con el sitio y descargar documentos. Si el sitio no posee este archivo, se entiende que el robot no tiene limitación ninguna para rastrear el sitio (se aplica el viejo principio del “el que calla, otorga”).
Si el sitio dispone del archivo robots.txt , se supone que el robot simplemente obedecerá las directrices del mismo. Hasta donde se sabe, los spiders de los principales buscadores obedecen las directrices.
La versión más simple del archivo robots.txt es la siguiente:
User-agent: * Disallow: |
La primera instrucción sirve para indicar si la misma se aplica únicamente a algún spider ( User-agent ) en concreto (no es el caso) o se aplica a todos en general ( * significa que la instrucción es válida para todos). La segunda instrucción ( Disallow ) sirve para indicar qué directorio (o directorios) queda excluido de la inspección del robot.
Por tanto, la versión del fichero robots.txt indica que no hay ningún directorio del servidor excluido y que tal indicación es válida para todos los spiders. Dicho de otro modo: cualquier spider puede indizar la totalidad del servidor. Esta es la opción más habitual, por otro lado. Lo normal es que las empresas estén interesadas en que les visiten cuantos más spiders mejor (significa que aparecerán en más índices de búsqueda) y en que indizen cuanta más información mejor.
Sin embargo, pudiera suceder que el administrador de un sitio quisiera excluir un directorio de la curiosidad de los buscadores. En este caso, el fichero robots.txt podría tener este contenido:
User-agent: * Disallow: /debates/ |
La instrucción anterior, evitará que los motores (al menos, los motores más conocidos, como Google o Yahoo) indicen el contenido del directorio debates .
No es necesario incluir un archivo robots.txt en el sitio autorizando expresamente que el sitio se puede indizar, ya que se considera que la ausencia de un fichero robots.txt equivale a la autorización. Sin embargo, se considera recomendable colocar el archivo aunque sea para confirmar que el sitio se puede indizar, ya que es el primer documento que el spider pedirá a nuestro servidor. Naturalmente, será obligado ponerlo en el caso que deseemos excluir alguna parte o todo el servidor del análisis de los spiders.
Actividad 4: Vaya al sitio oficial que mantiene el protocolo de exclusión de robots: http://www.robotstxt.org/ y acceda a la página Robots exclusion para conocer el contenido del protocolo original.
El lenguaje HTML proporciona un elemento del tipo meta que permite complementar (o sustituir el fichero robots.txt ). Como es sabido, los elementos meta de HMTL permiten añadir meta datos a una página utilizando el elemento indicado con los atributos name y content. El valor de name siempre debe ser “robots” , y el de content dependerá de lo que se quiera transmitir al robot. De este modo, una página web puede contener esta etiqueta en su código fuente en la sección head :
<meta name=”robots” content=”noindex, nofollow” /> |
Como es fácil de deducir, estamos diciendo a todo y cualquier robot que acceda a la página que ni debe indizar la página ni debe seguir los enlaces que pueda contener la misma. Naturalmente, podemos indicar lo contrario: index y follow , pero este es el comportamiento por defecto y por tanto no sería necesario indicarlo.
El programador de un spider debe considerar aún otros aspectos en su relación con los sitios web. Las opciones típicas que debe afrontar se refieren, en primer lugar, a la necesidad de desarrollar algoritmos que aseguren que el spider visita con más frecuencia los sitios que se actualizan así mismo con mayor frecuencia.
En segundo lugar, los spiders deben incorporar estrategias de análisis que les permitan explorar tanto en amplitud como en profundidad un sitio, sin quedar atrapados por largo tiempo en el mismo sitio, así que deben incorporar algoritmos sobre como tomar decisiones ante sitios a la vez muy amplios y muy profundos, de manera que no colapsen el servidor pero puedan acceder a la mayor parte del contenido del mismo si no en el mismo día o en días sucesivos.
En realidad, la casuística es enorme: cómo tratar con sitios que son muy enlazados, con sitios gestionados mediante sistemas de gestión de contenidos cuyas direcciones (URL) se generan de forma automática (en lugar de ser direcciones estáticas); cómo tratar enlaces incluidos en instrucciones JavaScript (por ejemplo, para generar menús desplegables); cómo tratar las altas manuales en su formulario al efecto, etc.
Actividad 5: Vaya a la página de Google dedicada a webmasters. Compruebe la disponibilidad de diversas herramientas que Google pone a disposición de los administradores de sitios.
Algunos motores, notablemente, Google, han afrontado la complejidad de las tareas que deben abordar sus robots mediante la creación de herramientas específicas (p.e. Sitemaps) destinadas a ser usadas por los administradores de sitios pero que sirven, por un lado, para que su spider “entienda” mejor el sitio y realice una indización exhaustiva tanto en amplitud como en profundidad y, por otro lado, para que el administrador del sitio pueda saber en todo momento cómo ha sido visto y analizado su sitio por parte del spider. Es decir, a cambio de dar algo de "poder" a los administradores de sitios en relación con el spider, el spider de Google a su vez puede interpretarlo mejor. Entendemos que se trata de una medida muy sabia por parte de Google. Lo mejor sería, sin embargo, que esta clase de procedimientos se consensuaran y adoptaran entre todos los motores y se llegase a un estándard, cosa que se ha iniciado recientemente con la propuesta de Google de hacer un estándard del sistema denominado Sitemaps (www.sitemaps.org).
Por tanto, aunque es de suponer que los spiders de los buscadores harán cada vez mejor su trabajo, no dejará tampoco de ser necesario que los responsables de los sitios tengan un cierto conocimiento de las características de esta clase de robots y de los problemas que deben afrontar.
Menezer, F. “Web crawling” En: Liu, B. Web data minig: Exploring hyperlinks, contents, and usage data . Berlin: Springer, 2007
Ties, D.; Davies, D. “How spiders work” En: The Search Engine Marketing Kit. Melbourne: Sitepoint, 2007
“Web crawler”. Wikipedia . http://en.wikipedia.org/wiki/Web_crawler
| inicio | temario | calendario | tutoría | notas | cambios | comunica | servicios | buscar | salir |