[Python-es] Procesar archivos de SYSLOG

Carlos Herrera Polo carlos.herrerapolo en gmail.com
Mar Abr 13 19:18:36 CEST 2010


Estoy intentando utilizar ahora la libreria dnspython

Lo que ocurre es que he podido identificar varios "hosts" como por ejemplo:

l.addthiscdn.com
login.live.com
meta.wikimedia.org
peru21.pe
translate.google.com.pe
zulu.tweetmeme.com
www.update.microsoft.com
banners.grupolarepublica.com.pe

Pero ahora lo que intento, y con el fin de no complicar tanto la agrupacion
de los registros de log, almacenar en una columna unicamente el dominio
principal, siguiendo con el ejemplo, quisiera procesar algo como.

login.live.com > live.com
banners.grupolarepublica.com.pe > grupolarepublica.com.pe
www.update.microsoft.com > microsoft.com

Se me ocurre que se puede utilizar para esto la libreria dnspython, pero
hasta ahora unicamente he conseguido separar en listas cada componente del
dominio con la funcion
dns.name.from_text("host")

Alguien tiene una mejor idea ? O talvez mas experiencia con dnspython

Gracias por su apoyo





El 13 de abril de 2010 11:08, Arnau Sanchez <pyarnau en gmail.com> escribió:

> On 13/04/10 01:27, lopz wrote:
>
>  No sé, yo no lo veo necesario usar un módulo de 3ros para parsear un
>> string, podrías hacerlo a base de strings y slices, o ahora que
>> aprendí lo básico de expresiones regulares me encantan, tiraría por
>> esto último.
>>
>
> Cierto, con splits de cadenas y expresiones regulares debería ser muy
> sencillo extraer cualquier información del log.
>
>
>  Lo de abrir todo el fichero grande es mucho para cargarlo en memória,
>> tendrás que usar buffers o algo así
>>
>
> Como ya se ha comentado más de una vez, el objeto que devuelve Python al
> abrir un fichero de texto es iterable (a cada paso devuelve una línea). Así
> que no hay preocuparse del tamaño del fichero si se usa como un iterador:
>
> for line in open(path):
>    print line
>
> Lo normal es crear generadores si el proceso consta de diferentes etapas.
>
> Respecto a cómo separar una URL en sus partes:
>
> http://docs.python.org/library/urlparse.html
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20100413/9ff51c9d/attachment.html>


Más información sobre la lista de distribución Python-es