2009-04-08 18 views
13

que tienen un texto html así:Reemplazar entidades html con los correspondientes caracteres UTF-8 en Python 2.6

<xml ... > 

y quiero convertirlo en algo legible:

<xml ...> 

Cualquier fácil (y rápido) manera de hacerlo en Python?

+1

Creo que la pregunta es un duplicado de esto: http://stackoverflow.com/questions/57708/convert-xml-html-entities-into-unicode-string-in-python –

+0

Posible duplicado de [descodificar entidades HTML en la cadena de Python?] (http://stackoverflow.com/questions/2087370/decode-html-entities-in-python-string) – csl

Respuesta

21

http://docs.python.org/library/htmlparser.html

>>> import HTMLParser 
>>> pars = HTMLParser.HTMLParser() 
>>> pars.unescape('&copy; &euro;') 
u'\xa9 \u20ac' 
>>> print _ 
© € 
+2

-1 porque: "En desuso desde la versión 2.6" – webjunkie

+0

webjunkie: corrigió el enlace. – vartec

+0

unescape es solo una función interna de HTMLParser (y no está documentado en su enlace). sin embargo, podría usar la implementación. 10x mucho – Alexandru

1

Hay una función here que lo hace, como vinculados del poste Fred señaló. Copiado aquí para facilitar las cosas.

Crédito a Fred Larson por vincular a la otra pregunta en SO. Crédito a dF por publicar el enlace.

Cuestiones relacionadas