Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando Práctica2. Generando la colección Primera parte: probando PHPCrawl PHPCrawl, es considerada una clase de PHP ó “phpclass”. Dicho de otra forma es un compendio de funciones complejas, programadas y preparadas para ser utilizadas en programas de mayor envergadura. En la primera parte de la práctica se tratará de poner a prueba el test de interfaz que permite manipular la configuración y comportamiento del webcrawler. Para iniciar el programa, ejecutar el servidor “server2go” e introducir en la barra de direcciones del navegador http://127.0.0.1:4001/phpcrawler/test_interface/ Si se instaló la versión modificada del programa, (propuesta en la asignatura) el usuario y contraseña de acceso serán “admin” ambas inclusive. Accederá a una pantalla similar a la que se expone a continuación: Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando 1. Cargar la configuración de ejemplo “Example_Setup” disponible en la opción “Load setup”. Seguidamente probar el webcrawler haciendo click en el botón “Start crawling with this settings” ¿Qué URL se está analizando? ¿Qué información proporciona PHPCrawl? Imprime la pantalla de resultados y describe qué significan los parámetros que aparecen. ¿Qué URL se está analizando? ¿Qué resultados proporciona el webcrawler? Imprimir pantalla Parámetro Descripción Page requested HTTP-Status Refering URL Refering linktext 2. La configuración de prueba, anteriormente utilizada, demuestra un control sobre la información y recuperación de los enlaces de la URL objeto del análisis. Tales aspectos pueden ser editados para trabajar de acuerdo a los principios que el usuario establezca. Por ello es vital conocer algunos de los apartados que delimitan el funcionamiento general del sistema. Estos factores caracterizan notablemente el tipo de colección de prueba ó base de conocimiento que se quiere desarrollar para un posterior proceso de recuperación de información. Por ello se deberá indagar el significado y funcionamiento de los siguientes apartados en el panel de control “Class Setup” del programa PHPCrawl. Parámetro Descripción Follow mode Follow matches Non follow matches Link priorities Content-types to receive Pista: Todos los apartados del panel de control disponen de un icono circular que corresponde a la información e instrucciones de uso del parámetro. Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando 3. Probando un caso real: primera parte. En muchos casos, la creación de semillas es un proceso lento y manual. Una solución para recuperar los enlaces de un recurso determinado de forma rápida y efectiva es el empleo de programas webcrawler. Para probar este concepto, se propone crear una nueva configuración en PHPCrawl. El nombre de la nueva configuración será “prueba1” en ella se establecerán los siguientes valores: Parámetro Valor Url to crawl http://www.doaj.org/doaj?func=subject&cpid=114&uiLanguage=en La URL que será analizada, corresponde al área de conocimiento de “Computer Science” del DOAJ (Directory of Open Access Journals), el objetivo es extraer los enlaces de las revistas referidas en la primera página. Se recuerda que el objetivo de esta prueba es puramente académico y divulgativo. Follow mode Follow every link Follow redirects Yes Follow redirects till content Yes Enable cookie handling Yes Agressive linkextraction Yes Obey robots.tx No Output – Requested URL Marcado Content-types to receive #text/html# Lanzar el proceso de crawling con los valores especificados y responder a las siguientes preguntas: ¿Qué tipo de enlaces se muestran en los resultados? ¿Qué tipo de documentos aparecen? ¿Corresponden todos a sitios web de revistas especializadas? ¿Se puede afirmar que hay ruido en la obtención de resultados? ¿Qué parámetro se debería utilizar para evitar ó reducir el ruido en los resultados? Téngase en cuenta que el objetivo primordial es obtener sólo aquellos enlaces correspondientes a los sitios web de las revistas de “Computer Science” Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando ¿Cómo eliminar aquellos enlaces correspondientes a imágenes? ¿Qué método se utilizaría en tal caso? Reconfigurar los parámetros proponiendo los valores que sean necesarios para reducir el ruido evitando la aparición de imágenes, iconos y enlaces vacíos. Requerirá diversas pruebas hasta encontrar la mejor configuración posible. Valor propuesto… Parámetro Non Follow matches Follow mode Output Obsérvese que después de aplicar las modificaciones, todavía quedan todos los enlaces propios del DOAJ, intercalados entre aquellos que sí resultan válidos, propios de las revistas que se pretenden recuperar. Este orden responde a la estructura de la página web analizada. No solo contiene el enlace principal de la revista, sino que también contiene el enlace de la categoría y sub-categoría temática y el apartado de cuota (Publication fee: further information). Estos enlaces que comportan cada uno de los registros mostrados en la página hacen que la extracción de los enlaces de las revistas, sea una labor compleja. Para solucionarlo, a priori se puede utilizar el parámetro “No follow matches”, así como una nueva línea de expresión regular que explicite la palabra “doaj” de la URL extraída. Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando Por ello, se deberá probar esta modificación en el parámetro citado anteriormente y explicar los cambios producidos en los resultados. ¿Funciona correctamente? ¿Qué ha podido fallar? 4. Probando un caso real: segunda parte. Tal como se ha explicado y comprobado PHPCrawl no distingue que la aplicación de las expresiones regulares en los enlaces, deben ceñirse a todos los enlaces menos a la URL objeto de análisis. También se demuestra que un sitio web con una estructura de enlaces heterogénea, dificultará la extracción de los recursos de revistas en “Computer Science”. En la siguiente prueba se experimentará cómo extraer los enlaces del Ranking Web de Universidades del Mundo, para ello se creará una nueva configuración denominada “prueba2” que deberá constar de los siguientes parámetros y valores: Parámetro Valor Url to crawl http://www.webometrics.info/top12000_es.asp La URL que será analizada, corresponde al Ranking Web de Universidades del Mundo elaborado por el grupo de investigación Cybermetrics Lab, encabezado por el profesor Isidro Aguillo. Se recuerda que el objetivo de esta prueba es puramente académico y divulgativo. Follow mode Follow every link Follow redirects Yes Follow redirects till content Yes Enable cookie handling Yes Agressive linkextraction Yes Obey robots.tx No Output – Requested URL Marcado Content-types to receive #text/html# Lanzar el proceso de crawling con los valores especificados y responder a las siguientes preguntas: ¿Qué tipo de enlaces se muestran en los resultados? ¿Qué tipo de documentos aparecen? ¿Corresponden todos a sitios web de universidades? ¿Se puede afirmar que hay ruido en la obtención de resultados? Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando Cuando comienzan a aparecer los enlaces correspondientes a universidades, según se muestra entre los resultados de la prueba, ¿qué enlace aparece intercalado? Copia una muestra del caso. Cómo evitar que éste enlace aparezca. Está claro que eliminarlo supondría la obtención de la lista de enlaces de universidades sin interjecciones. Ello facilitaría la obtención de una semilla rápidamente. Aplicar los cambios correspondientes en el parámetro “Non follow matches” para hacer posible la extracción directa de los enlaces. Copiar la sección de resultados en la que aparezcan las direcciones URL de las universidades e imprimir pantalla comprobante. ¿Cómo es posible que el Ranking Web de Universidades del mundo sea más sencillo de analizar? La estructura de enlaces y el diseño del código fuente en forma de tabla con una lista sencilla de direcciones URL hace posible que el webcrawler, pueda distinguir más fácilmente ésta información. También el tipo de enlaces que se intercalan constan de detalles diferenciadores (léase variables GET distintas) con respecto a la URL objetivo, lo que permite a PHPCrawl analizar el sitio web sin restricciones como ocurría en el caso anterior. Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando Segunda parte: experimentando con Sphider Sphider es un programa que integra las funciones propias de un webcrawler y los procesos de indexación necesarios para permitir la recuperación de información efectiva sobre los contenidos recopilados a través de los enlaces definidos en las semillas. Es un ejemplo perfecto sobre cómo generar una colección de documentos de prueba, también denominado corpus documental. Para iniciar el programa, ejecutar el servidor “server2go” e introducir en la barra de direcciones del navegador http://127.0.0.1:4001/sphider/ Si se instaló la versión modificada del programa, (propuesta en la asignatura) el usuario y contraseña de acceso serán “admin” ambas inclusive. Accederá a una pantalla similar a la que se expone a continuación: Si se llevó a cabo correctamente el proceso de instalación especificado en la entrada del blog de la presente práctica2, se deberían haber generado una serie de archivos con extensión “.sql”, imprescindibles para la importación de las direcciones URL de cada archivo de semilla. También se debe advertir que deberán disponerse de tantas instalaciones Sphider como archivos de semilla se tengan, a fin de poder diferenciar correctamente todos los resultados obtenidos en la práctica. Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando Para cada instalación que deberá tener una semilla de enlaces cargada llevar a cabo las siguientes tareas. Instalación 1 [área de conocimiento] 1. Configuración de Sphider. Seleccionar la opción “settings” y aplicar los siguientes valores a los parámetros indicados. Parámetro Valor Language (applies to search page) Spanish Index numbers Marcado Index words in domain name and url path Marcado Index meta keywords Marcado 2. Indexación y generación de la colección. Seleccionar la opción “sites”, se comprobará que todas las revistas de la semilla fueron importadas correctamente y todo está preparado para su indexación. Obsérvese que aparecerá el mensaje “Not indexed” en todas las direcciones URL de la lista de “Site url”. Se deberá iniciar el proceso de indexación de toda la semilla. Ello dará como resultado la extracción de enlaces y contenidos textuales que serán indexados, generando una colección de documentos especializada en el área de conocimiento de la semilla. Por defecto y para evitar tiempos de ejecución excesivos, se ha introducido un valor de “1” en el nivel de profundidad del análisis de Sphider para cada sitio web de la semilla. Para iniciar el proceso de indexación hacer click en la opción “Reindex all”. El proceso puede ser interrumpido y retomado en otro momento, haciendo click en la misma opción. Cuando toda la lista de sitios fuere indexada el proceso habrá concluido y se podrá seguir con el siguiente punto de la práctica. (Es muy importante) 3. Prueba de búsqueda. Sphider dispone de un buscador integrado, lo que le permite actuar como motor de búsqueda además de webcrawler. Para acceder a su buscador introducir en la barra de direcciones del navegador la URL http://127.0.0.1:4001/sphider/search.php y lanzar una consulta sobre cualquier término relacionado con el área de conocimiento respectivo. Cadena de consulta utilizada Impresión de pantalla 4. Preparación de resultados. Para finalizar la segunda parte de la práctica2, deberá generar un archivo de resultados en formato “.sql” para que pueda ser estudiado y empleado para investigaciones científicas sobre la mejora y desarrollo de procesos de crawling. Técnicas avanzadas de recuperación de información Prof. Manuel Blázquez Ochando Se deberá introducir en la barra de direcciones del navegador la URL http://127.0.0.1:4001/phpmyadmin/ , a continuación seleccionar la base de datos “sphider” correspondiente a la instalación que se trate. Seleccionar la tabla “links”. Seleccionar la opción “exportar”. Hacer click en el botón “Continuar”. El resultado obtenido será un archivo comprimido “links.sql.zip” que se deberá descargar y guardar para incluirlo entre los resultados de la presente práctica. Se deberá renombrar con la siguiente denominación: inst1.area-de-conocimiento.apellido.zip Instalación 2 [área de conocimiento] [Aplicar enunciado de la instalación1] Instalación 3 [área de conocimiento] [Aplicar enunciado de la instalación1] Instalación 4 [área de conocimiento] [Aplicar enunciado de la instalación1] Instalación 5 [área de conocimiento] [Aplicar enunciado de la instalación1] Fin del experimento Cuando todos los pasos fueren finalizados, enviar el presente documento cumplimentado, junto con los archivos comprimidos correspondientes a los resultados. Todos ellos comprimidos en un único archivo con la denominación: practica2_nombre-apellidos.zip