Resultados 1 al 3 de 3

Tema: Tcnicas de Data Mining automatizado: Extraccin de enlaces de una pgina web

  1. #1 Tcnicas de Data Mining automatizado: Extraccin de enlaces de una pgina web 
    HH Administrator Avatar de LUK
    Fecha de ingreso
    Oct 2001
    Ubicacin
    Spaa
    Mensajes
    5.028
    Descargas
    179
    Uploads
    246
    La minera de datos Web es una tcnica crucial. Los buscadores viven de ella, y para nuestra desgracia, tambin la usan los spammers para incorporar contenidos a sus listas de distribucin. Muy esquemticamente, minar datos Web equivale a automatizar procesos que buscan datos en pginas y generan inteligencia posterior, extrayendo informacin de los contenidos minados e incorporando criterios de almacenamiento a una base de datos. Por ejemplo, buscar pginas que contengan la palabra clave "Linux" y generar una base de datos donde aparece la URL de la pgina que contiene el trmino, el nmero de veces que la contiene (densidad de keyword) y si aparece o no el trmino buscado en la URL es un minado de datos elemental con inteligencia.

    En sntesis, una araa o buscador Web es un conjunto de programas que recorren pginas y van incorporando a su ndice informacin para que luego podamos buscarlos por criterios introduciendo en el buscador un conjunto de trminos que queremos localizar. Huelga decir que las araas modernas recaban mucha ms informacin que la que hemos puesto de ejemplo, y generan bases de datos donde los criterios son mltiples y de toda ndole, constituyndose en algunos casos como motores tendentes a la inteligencia artificial. Ejemplos de araas moderna pueden ser Googlebot, o Yahoo! Slurp, que son los motores principales que asisten los procesos de minera de los buscadores Google y Yahoo! respectivamente.

    Para ilustrar estos procesos de minera automatizado, vamos a recurrir ejemplos muy sencillos en Perl. El motivo de escoger Perl es por la presencia de mdulos ya elaborados especializados en recuperacin de datos Web, y de hecho, muchos buscadores se apoyan en software programado en este lenguaje. No os preocupis, que no vamos a programar una araa, tan slo veremos funcionalidades bsicas que cualquier motor de bsqueda incorpora para ejemplificar las tcnicas de minera automatizada de datos.


    Lo ms elemental

    Vamos a recuperar el cdigo fuente de una pgina. Para ello empleamos el siguiente cdigo que salvaremos como script1.pl, y donde nos apoyaremos en el mdulo LWP::Simple, una versin simplificada de libwww-perl.

    Cdigo:
    use LWP::Simple;
     
    	getprint("http://www.perl.org");
     
    	die "Ejecucion finalizada\n";
    Ejecutamos:
    Cdigo:
    perl script1.pl
    La salida de este script no es otra que el cdigo fuente HTML puro y duro de http://www.perl.org


    Grabar una pgina HTML

    Otro ejemplo para ilustrar los mecanismos de recuperacin es grabar una pgina. Para ello, nuevamente, nos apoyamos en LWP::Simple, pero esta vez en la funcin getstore();

    Cdigo:
    use LWP::Simple;
     
    	getstore("http://www.perl.org", "paginaguardada.html");
     
    	die "Ejecucion finalizada\n";
    La salida de este comando es un fichero llamado paginaguardada.html, en el que se ha volcado el cdigo fuente que se recuperara mediante getprint(); en un fichero HTML. Eso s, slo se vuelca la pgina, no los enlaces que requiera, como por ejemplo, hojas de estilo. Transporte de cdigo a fichero, puro y duro.


    Complicando un poco ms las cosas

    Todo esto se puede complicar todo lo que queramos. El ltimo ejemplo nos va a permitir sacar a fichero la coleccin de enlaces http:// presentes en una pgina determinada. Para ello vamos imaginar que alguien quiere coger los enlaces de las guas de seguridad de la NSA que tengo publicados en http://www.sahw.com/wp/archivos/2007...dad-de-la-nsa/ para poder publicarlos en su blog. Una posible manera es editar el cdigo fuente, copiar en un editor, filtrar y salvar. Mediante Perl es ms sencillo y lo haremos empleando otro mdulo tpico en minera automatizada, HTML::LinkExtor, especializado en la extraccin de enlaces de documentos HTML. Generamos el fichero script2.pl con el siguiente cdigo:

    Cdigo:
    use HTML::LinkExtor;
    use LWP::Simple;
     
    my $pagina = get(shift) || 
     
    "<html><body>Not found</body></html>"; 
     
    my $recuperador = new HTML::LinkExtor; 
     
    $recuperador->parse($pagina);
     
    my @enlaces = $recuperador->links; 
     
    foreach (@enlaces) {    
     
    	while (my ($exclusiones) = splice(@$_, 2)) {
     
         		next unless $exclusiones =~ m/nsa.gov/; 
     
    	print "$exclusiones\n"; 
     
    	}
    }
    die
    Ejecutamos especificando la URL que queremos rastrear:
    Cdigo:
    perl script2.pl "http://www.sahw.com/wp/archivos/2007/12/11/guias-de-configuracion-de-seguridad-de-la-nsa/"
    El resultado es una coleccin de enlaces directos a los documentos expuestos en el artculo, y que cumple con el criterio de exclusin que hemos declarado (mostrar slo enlaces que contengan la secuencia nsa.gov)


    Cuantos enlaces contienen todos los artculos de este blog?

    El proceso de extraccin de enlaces se puede automatizar de mltiples maneras, as que prepar un script en bash que ejecutaba cclicamente el script de extraccin perl, de modo que se ejecutase sobre la totalidad de artculos el blog. He recorrido todos los enlaces, comenzando por http://www.sahw.com/wp/archivos/2004...-weblog-nuevo/, primer enlace vivo del blog, y que publiqu el 6 de enero de enero de 2004 (me acabo de dar cuenta que hace 12 das este blog empez su andadura en su cuarto ao de vida, lo que son las cosas). La recolecta la detuve a comienzos de esta semana, con lo que no estn todos, pero s su mayora.

    La minera la hice sin tratamiento de errores, con lo que los potenciales cortes de conexin o cadas del hospedaje pueden haber mermado la cantidad de enlaces recolectados. Sea como fuere, el resultado es este fichero, donde estn recogidos todos los enlaces publicados en artculos y comentarios. Esta misma operacin la hacen a diario Google, Yahoo y un sinfn ms de agentes, entre los que lgicamente estn los operados por spammers en busca de informacin. Obviamente, no se conforman con slo enumerar los enlaces, sino que los guardan y los relacionan con los artculos de diversas maneras.

    Para el que no tenga ganas de contar, estos 267277 bytes contienen 5222 enlaces, lo que implica que en los 1107 das que llevamos abiertos, entre todos hemos enlazado una media de 4,71 enlaces por da. Algunos son URLs no vlidas, ya que son inventadas por los comentaristas (http://CriticasobrelosAntispyware, http://Google, http://Informacinenespaol, http://Informacion, http://Julio y similares) si bien son en nmero casi despreciables. Estn ordenados alfabticamente

    Fuente:
    http://www.sahw.com/wp/archivos/2008...na-pagina-web/
    [][][] LUK [][][]
    hackhispano.com
    Citar  
     

  2. #2  
    Iniciado
    Fecha de ingreso
    Dec 2007
    Mensajes
    4
    Descargas
    0
    Uploads
    0
    Muy interesante

    Gracias
    Citar  
     

  3. #3  
    Avanzado
    Fecha de ingreso
    Jan 2004
    Ubicacin
    Donde me dejan
    Mensajes
    433
    Descargas
    7
    Uploads
    0
    Ya sabemos un poquito mas de como funciona google, gracias por la informacin LUK

    Saludos
    El mejor maestro es uno mismo, aun que siempre va bien una ayudita
    Citar  
     

Temas similares

  1. Extraccion de datos de una BDD online
    Por Bigruf en el foro BASES DE DATOS
    Respuestas: 7
    ltimo mensaje: 09-03-2012, 15:01
  2. Respuestas: 0
    ltimo mensaje: 10-08-2009, 16:20
  3. Respuestas: 0
    ltimo mensaje: 22-01-2008, 08:53
  4. Respuestas: 1
    ltimo mensaje: 19-01-2008, 08:22
  5. Extraccin de e-mails de cuentas IMAP
    Por asbutron en el foro OFF-TOPIC
    Respuestas: 0
    ltimo mensaje: 14-08-2007, 13:41

Marcadores

Marcadores

Permisos de publicacin

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •