[Python-es] parsear HTML

Nekmo contacto en nekmo.com
Mie Mar 2 17:39:49 CET 2011


Yo con lxml suelo usar una funcionalidad que me permite filtrar usando
CSS, lo cual me es una pasada :D Además tienes lxml tanto en Python3
como en 2.x

Un cordial saludo:
-- Nekmo.

Sitio web: http://nekmo.com
Dirección de contacto: contacto en nekmo.com
XMPP/Jabber: contacto en nekmo.com
Identi.ca: http://identi.ca/nekmo
Diaspora: Nekmo



2011/3/2 Luis Miguel Morillas <morillas en gmail.com>:
> El día 2 de marzo de 2011 15:23, (P en vel) <pdlopez en uci.cu> escribió:
>> Como puedo de un archivo html cojer todas las etiquetas <tr></tr> que tengan
>> un <td></td> que se llame cuentos infantiles por ejemplo, y guardar el valor
>> que tenga los demas <td> de ese <tr>, es decir cojer los valores de todas
>> las columnas de esa fila, por ejemplo: cenicienta, 25.00
>>
>> <tr align="RIGHT" bgcolor="#ffffff">
>> <td nowrap="nowrap" align="center">Cuentos Infantiles</td>
>> <td><font color="#008000">Cenicienta</font></td>
>> <td><font color="#008000">25.00</font></td>
>> </tr>
>>
>
> Yo lo hago así usando una expresión xpath con amara:
>
> from amara.bindery import html
>
> doc = html.parse(url_de_la_web)
> cuentos = doc.xml_select(u'//tr[td="Cuentos Infantiles"]')
>
> # nodos html
> for cuento in cuentos:
>    cuento.xml_encode()
>
> # sólo contenido
> for cuento in cuentos:
>    for datos in cuento.xml_children:
>        print datos,
>
>
> Si quieres probar amara sin instalar, he creado un amaraPortable para
> windows: https://bitbucket.org/lmorillas/amaraportable/downloads/AmaraPortable.exe
>
>
> Saludos,
>
> -- luismiguel
>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>


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