|
Manuales: Cómo funcionan los 'robots' |
Sobre los robots del WWW¿Qué es un robot WWW?Un robot es un programa que atraviesa automáticamente la estructura del hipertexto del Web extrayendo un documento, y recurrentemente extrae todos los documentos que estén referenciados. Observe que "recurrente" aquí no limita la definición a ningún algoritmo traversal específico; incluso si un robot aplica algo de heurística a la selección y orden de documentos a visitar y espacia mucho las peticiones en el tiempo, sigue siendo un robot. Los browsers normales del Web no son robots, porque funcionan por acción de un ser humano, y no extraen automáticamente los documentos referidos (con excepción de imágenes en línea). A los robots del Web a veces se les llama Web Wanderers, Web Crawlers o Spiders (arañas). Estos nombres dan la impresión de que el software tiene vida propia; esto no es exactamente así, un robot simplemente visita sitios solicitando documentos. ¿Qué es un agente?La palabra 'agente' tiene muchos significados en informática en estos días. Algunos de ellos son: Agentes autónomos son programas que viajan a través de los Webs, decidiendo por sí mismos cuándo moverse y qué hacer (p.e. General Magic's Telescript). Este sólo puede viajar entre servidores especiales y no está muy extendido en InterNet. Agentes inteligentes son programas que ayudan a los usuarios a realizar determinadas acciones, eligiendo productos o guiando al usuario para rellenar formularios correctamente o para encontrar cosas. Por lo general, tienen poco que hacer en el entramado de una red. Agente de usuario es un nombre técnico para los programas que realizan tareas de red para un usuario, p.e. agentes de usuario para Web como Netscape Explorer, agentes de usuario para e-mail como Qualcomm Eudora, etc. ¿Qué es un motor de búsqueda?Un motor de búsqueda es un programa que busca a través de un conjunto de datos. En el contexto del Web, la palabra 'motor de búsqueda' se usa para referirse a programas que buscan en una base de datos de documentos HTML indexados por un robot. ¿Cuántos tipos de robots existen?Los robots se pueden usar para los siguientes propósitos:
Dependiendo del tipo de función que queramos realizar, debemos elegir un robot u otro. Entonces, ¿qué son Robots, Spiders, Web Crawlers, Worms, Ants?Todos estos nombres se usan para definir lo mismo, pero con pequeños matices: Robots el nombre genérico, míralo más arriba. Spiders (o arañas) igual que los robots, pero suena mejor de cara a los periódicos. Worms igual que los robots, aunque técnicamente es un programa que se autoduplica, no como los robots. Web crawlers igual que los robots, pero date cuenta de que WebCrawler es un robot específico. WebAnts robots cooperativos distribuidos. ¿Son malos los robots para el Web?Hay algunas razones por las que la gente cree que los robots son malos para el Web:
Pero al mismo tiempo, la mayoría de los robots están bien diseñados por profesionales, no causan problemas y proporcionan un servicio de mucha utilidad mientras no se encuentren soluciones mejores. Los robots no son malos por sí mismos ni tampoco son extraordinarios. Por eso, necesitan de una atención especial. ¿Hay algún libro sobre robots?Internet Agents: Spiders, Wanderers, Brokers, and Bots de Fah-Chun Cheong. Este libro trata de los robots de WWW, agentes de transacciones comerciales, agentes Mud y unos cuantos más. Incluye el fuente de un robot simple basado en libwww-perl4. Su cobertura de HTTP, HTML y librerías Web es escasa para construir un robot, pero proporciona una muy buena visión del tema si no dispones de tiempo para buscar toda la información en el WWW. Publicado por New Riders, ISBN 1-56205-463-5. Bots and Other Internet Beasties por Joseph Williams Publicado por Sam's, ISBN: 1-57521-016-9 Web Client Programming with Perl por Clinton Wong Puedes encontrar algunos más en The Software Agents Mailing List FAQ ¿Dónde puedo encontrar más información?Hay una página sobre robots en: http://info.webcrawler.com/mak/projects/robots/robots.html . Hay una enorme cantidad de documentación mantenida por Martijn Koster. También puedes encontrar detalles y un archivo con la lista de distribución sobre los robots, que está hecha para discusiones técnicas sobre los mismos. Robots que indexan¿Cómo decide un robot qué visitar?Depende del robot; cada uno usa sus propias estrategias. En general comienzan por un listado 'histórico' de URLs, especialmente de documentos que tienen enlaces a muchos Webs, como listas de servidores, páginas de novedades y los Webs más populares de InterNet. La mayoría de servicios de indexación te permiten mandar URLs manualmente, que entran a formar parte de una cola para que el robot las visite. A veces, se usan otras fuentes de URLs, desde escáners hasta grupos de USENET, archivos de listas de distribución públicos, etc. Una vez dados estos puntos de comienzo, un robot puede seleccionar URLs a visitar e indexar y tomarlas como fuentes para otras URLs. ¿Cómo decide un robot que indexa qué indexar?Si un robots que indexa tiene constancia de la existencia de un documento, puede decidir indexarlo y añadirlo en su base de datos. Cómo lo haga depende del robot: algunos, indexan los títulos HTML o los primeros párrafos, o miran todo el código HTML e indexan todas las palabras, con un peso determinado que depende de las construcciones HTML, etc. Algunos tienen en cuenta los META tags u otras etiquetas ocultas especiales. ¿Cómo puedo registrar mis páginas con un robot?Depende del servicio :-) La mayoría tiene un formulario para añadir URLs en sus páginas. Afortunadamente no tienes que añadirlas manualmente. Submit-it o nuestros profesionales pueden hacerlo por tí. Para los administradores de web¿Cómo puedo saber si me ha visitado un robot?Puedes buscar en los registros los sitios web desde los que se solicitan muchos documentos, especialmente en un periodo corto de tiempo. Si tu servidor soporta conexiones de agentes de usuario, puedes buscar peticiones con cabeceras de agentes de usuario inusuales. Finalmente, si te das cuenta de que desde un sitio web se solicita repetidamente el fichero '/robots.txt', seguramente es un robot, también. Me ha visitado un robot. ¿Y ahora qué?Bien, no pasa nada :-) La idea es que son automáticos; así que no tienes que hacer nada. ¡Un robot está atravesando mi Web demasiado rápido!Esto se llama 'rapid-fire', y la gente normalmente lo nota si está monitorizando o analizando un fichero de registro de accesos. Lo primero de todo, mira si hay algún problema en tu servidor, mira tu fichero de registro de errores y las conexiones concurrentes si puedes. Si tienes un servidor medianamente aceptable, es probable que puedas ver varias peticiones de documentos al servidor por segundo, especialmente si las visitas son rápidas. Si está claro que es un robot, hay algunas cosas que puedes hacer. Lo más importante, empieza a ordenar la información: cuándo lo notaste, qué ocurrión, qué se veía en los ficheros de registro, qué estás haciendo para evitarlo, etc.; esto te ayudará a investigar el problema más adelante. Segundo, intenta encontrar de dónde viene el robot, de qué dirección IP o DNS, y mira si es un robot de los catalogados. Si puedes identificar un sitio web, puedes contactar con el responsable y preguntarle qué pasa. ¿Cómo puedo mantener a un robot fuera de mi servidor?Lee la siguiente sección... Estándar para la exclusión de robots¿Por qué encuentro accesos al fichero /robots.txt en mis ficheros de registro?Probablemente son de robots que intentan ver si has especificado algunas normas para ellos usando el estándar para la exclusión de robots. Mira la sección de abajo. Si no te importan los robots y no quieres que te aparezca un error en tus ficheros de registro, crea un fichero robots.txt vacío y ponlo en el directorio raiz de tu Web. ¿Cómo puedo conseguir que los robots no indexen mi Web?La forma más rápida de hacerlo es poniendo estas dos líneas en el fichero /robots.txt: User-agent: * pero es mejor ser un poco más cuidadoso con esto. ¿Dónde puedo encontrar cómo se usa el fichero /robots.txt?Puedes buscar documentación técnica, pero los conceptos básicos son muy simples: escribiendo un fichero de texto estructurado puedes indicarle a los robots que ciertas partes de tu Web están fuera de sus límites. Vamos a ver un ejemplo: # Fichero /robots.txt para http://webcrawler.com/ User-agent: webcrawler User-agent: lycra User-agent: * La primera línea, que empieza con '#', es un comentario. El primer párrafo quiere decir que el robot llamado 'webcrawler' no tiene restricciones: puede ir donde quiera. El segundo párrafo indica que el robot llamado 'lycra' tiene prohibidas todas las direcciones relativas que empiezan por '/'. Como todas las direcciones relativas de un servidor empiezan por '/', quiere decir que tiene el acceso prohibido a todo el Web. El tercer párrafo indica que todos los demás robots no pueden visitar URLs que empiezan por /tmp o /log. El '*' es un caracter especial, no una expresión regular. Dos errores habituales:
¿Qué pasa si no puedo hacer un fichero /robots.txt?A veces no puedes hacer un fichero /robots.txt, porque no puedes administrar el servidor completamente. Tranquilo, no está todo perdido. Hay un nuevo estándar para usar META tags de HTML y mantener a los robots alejados de los documentos. La idea básica es que si incluyes una etiqueta como: <META NAME="ROBOTS" CONTENT="NOINDEX"> en tu documento HTML, este documento no se indexará. Si pones: <META NAME="ROBOTS" CONTENT="NOFOLLOW"> los enlaces que tiene ese documento no los indexará el robot. Disponibilidad¿Dónde puedo usar un robot?Si lo que quieres es un servicio de búsqueda, mira en el Web de Netscape Exploring the Net o en MetaSearch. ¿Dónde puedo conseguir un robot?Bueno, puedes consultar la lista de robots y buscar los de libre distribución. ¿Dónde puedo conseguir el código fuente de un robot?Mira arriba -- en algunos sitios te proporcionan el código fuente. Si no lo consigues, mira el paquete libwww-perl5, que tiene un ejemplo simple. Estoy haciendo un robot, ¿qué necesito saber?Muchas cosas. Primero, lee la documentación de la página de los robots y luego los procedimientos de las últimas Conferencias WWW y las especificaciones de HTTP y HTML completas. Sí, es mucho trabajo :-) He hecho un robot, ¿cómo puedo incluirlo en las listas?Rellena un formulario que encontrarás en The Web Robots Database. |
Aún no hay comentarios para este recurso.
Monografias, Exámenes, Universidades, Terciarios, Carreras, Cursos, Donde Estudiar, Que Estudiar y más: Desde 1999 brindamos a los estudiantes y docentes un lugar para publicar contenido educativo y nutrirse del conocimiento.
Contacto »