[Grey-Walter] (pr:topact) resumen 1

NOCREYENTES NOCREYENTES at terra.es
Wed Dec 17 23:37:58 CET 2003


Buenas:

Estaba un poco ansioso y antes de elgir un CVS he hecho algo de codigo.
Seguí el planteamiento de: wget -> parser -> ....

Use wget porque si hago una llamada a
http://acp.sindominio.net/search.pl?op=comments&sid=valoracionhuelga con
el HTTrack me escribia un nombre de fichero que no tenia mucho que ver
con esa URL (se puede cambiar?), mientras que con el wget me salia algo
como acp.sindominio.net/search.pl at op=comments&sid=valoracionhuelga.

Luego me he hecho un script en python muy simplon (que adjunto) y
ayudado del find para procesar unos cuantos ficheros he sacado un
pequeño fichero de prueba. Tiene 3 columnas: pagina, link,
texto_del_link. Adjunto fichero de muestra.

Una vez hecha la introducción ya puedo lanzar unas preguntas al aire.
¿Me interesa conocer todos los enlaces o solo htmls? ¿Me interesa saber
el mime-type de los ficheros de los enlaces?

Me he dado cuenta que con un poco más de trabajo podría hacer la araña
que se descarga los datos y no necesitar del wget o httrack. Cosa que
nos ahorraria tiempo, porque la araña saca los links y luego yo los
tengo que volver a sacar (se hace 2 veces el parseo). Por otro lado,
haciendo la araña se pueden obtener más información de los enlaces:
mime-type, si esta cacheado, ...

Bueno, creo que ya tenemos 3 vias para atacar el proyecto como queramos.
Incluso se podrían generar requisitos para hacer los programas que
analizan los datos finales, dicho de otro modo, ¿qué datos nos interesa
obtener?

Un saludo:

Javi


----- Mensaje Original -----
De: David Gómez i Fontanills <dvd at enlloc.org>
Fecha: Domingo, Diciembre 14, 2003 3:47 pm
Asunto: Re: [Grey-Walter] (pr:topact) resumen 1

> Respecto a SOURCEFORGE y SAVANNAH podéis leer un artículo de la 
> FSF-EU:
> http://www.fsfeurope.org/new
> No sé si las dudas sobre Sourceforge se han confirmado pero 
> Alexandria 
> (soft de sourceforge) consta aún bajo GPL. De todas formas parece 
> razonable que una plataforma de ese tipo no dependa de una sola 
> empresa.
> Por cierto, ¿alguien tiene experiencia de usar uno de los dos 
> (sourceforge o savannah)?. ¿Cual es el proceso para inscribir un 
> proyecto?
> dvdgmz
> 
> >>3- La apreciación de que se necesita un CVS me parece muy buena,
> >>¿pero por qué no usar SourceForge? A parte de CVS tiene foros, para
> >>proponer mejoras, listas, ...
> >>    
> >>
> >
> >se me olvidó escribir que he visto que sindominio sí tiene un CVS.
> >Sourceforge es mucho más que CVS, es mejor. Como veáis
> >¿conocéis Savannah.gnu.org? creo que es parecido a sourceforge
> >Otra opción es que nosotros nosmontemos nuestro propio 
> repositorio, 
> >pero eso implica tiempo y habíendo los que hay ya instalados...
> >  
> >
> 
> _______________________________________________
> Grey-Walter mailing list
> Grey-Walter at listas.sindominio.net
> https://listas.sindominio.net/mailman/listinfo/grey-walter
> 

-------------- next part --------------
#!/bin/env python
from HTMLParser import HTMLParser
from os import sys

class LinksParser(HTMLParser):
        pagina='' #El nombre de la pagina que estamos parseando
        enlaces=[] #Los enlaces que contiene la pagina
        enA=0 #Flag para saber si estamos procesando un fichero
        
        tmp_enlace=''
        tmp_data=''
        def handle_starttag(self,tag, attrs):
                if str(tag)=='a':
                        self.enA=1
                        for clave, valor in attrs:
                                if clave=='href':
                                        self.tmp_enlace=valor
                else:
                        self.enA=0
        def handle_data(self, data):
                if self.enA:
                        self.tmp_data=data
        def handle_endtag(self, tag):
                if tag=='a':
                        self.enA=0
                        self.enlaces.append((self.tmp_enlace,self.tmp_data.strip()))

f=open(sys.argv[1],'r')
parser=LinksParser()
parser.pagina=sys.argv[1]
for i in f.readlines():
        parser.feed(i)
parser.close()
for i in parser.enlaces:
        enlace, texto=i
        print "'%s','%s','%s'" % (parser.pagina, enlace, texto)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: topact.log.gz
Type: application/x-tar
Size: 15507 bytes
Desc: not available
Url : /pipermail/grey-walter/attachments/20031217/60d80e87/topact.log.tar


More information about the Grey-Walter mailing list