2009-04-08 10 views
13

Ho un testo HTML come questo:Sostituire entità HTML con i caratteri UTF-8 corrispondenti in Python 2.6

<xml ... > 

e voglio convertirlo in qualcosa di leggibile:

<xml ...> 

Qualsiasi facile (e veloce) modo di farlo in Python?

+1

Penso che la domanda sia un duplicato di questo: http://stackoverflow.com/questions/57708/convert-xml-html-entities-into-unicode-string-in-python –

+0

Possibile duplicato di [Decodifica entità HTML in Python string?] (http://stackoverflow.com/questions/2087370/decode-html-entities-in-python-string) – csl

risposta

21

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

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

-1 perché: "Obsoleto dalla versione 2.6" – webjunkie

+0

webjunkie: corretto il collegamento. – vartec

+0

unescape è solo una funzione interna di HTMLParser (e non è documentato nel tuo link). comunque potrei usare l'implementazione. 10x un sacco – Alexandru

1

C'è una funzione here che lo fa, come collegato dalla carica Fred ha sottolineato. Copiato qui per rendere le cose più facili.

Credito a Fred Larson per il collegamento all'altra domanda su SO. Credito a dF per la pubblicazione del collegamento.

Problemi correlati