Problemas con HTMLParser

lorca pylorca en yahoo.com.ar
Vie Oct 8 18:47:33 CEST 2004


lo del tidy lo habia pensado, pero es un paso mas, asi que si no me queda otra...

gracias igual por la rta ;)

On Fri, 8 Oct 2004 10:40:36 +0200
Hernán Martínez Foffani <hernan en orgmf.com.ar> wrote:

> > Bueno en algunas paginas cuando trato de parsearlas me tira un error,
> > aparentemente es debido a una malaformacion de la pagina html
> >
> > por ejemplo trato de parserar los links de una pagina y me tira un
> > error:
> >
> >>>> import parser
> >>>> a = parser.LinksParser("http://yahoo.com.ar")
> >
> > Traceback (most recent call last):
> >   File "<stdin>", line 1, in ?
> > ......
> > HTMLParser.HTMLParseError: malformed start tag, at line 8, column 451
> 
> No mencionas lo mas importante: qué es lo que hay en la linea 8,
> columna 451 y sus alrededores.
> 
> > Aca les dejo el codigo, que al al parecer está bien, porque con
> > algunas paginas funciona perfecto y con otras no
> 
> El parser de hmtl del python es muy estricto.  Los navegadores en
> general no lo son y suelen aceptar como entrada valida htmls con
> errores.  Creo que eso es una herencia de cuando los htmls se
> editaban a mano y no se entendía muy bien que era. jeje.
> 
> Mi recomendación es que corrijas los html de entrada con HTMLTidy.
> Hay unas bibliotecas para invocarlo directamente desde python.
> 
> Otra posibilidad es que el error se deba a que el html incluya
> codigo script.  El parser de python no lo tolera.  Deberías eliminar
> eso de la entrada antes de pasarlo al parser.
> 
> Si estas alternativas no son viables para tu aplicación quizás
> pueda ser necesario olvidarte del parser y usar algun navegador
> completo que permita ser controlado desde fuera.
> 
> Saludos,
> -H.
> 
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es


-- 
l o r c a
Homepage: http://www.pylorca.com.ar
plasma:   http://lorca.homelinux.com/plasma




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