16 Stimmen

Ersetzen von html-Entities durch die entsprechenden utf-8-Zeichen in Python 2.6

Ich habe einen html-Text wie diesen:

<xml ... >

und ich möchte sie in etwas Lesbares umwandeln:

<xml ...>

Gibt es eine einfache (und schnelle) Möglichkeit, dies in Python zu tun?

26voto

vartec Punkte 124396

Python >= 3.4

Offizielle Dokumentation für HTMLParser : Python 3

>>> from html import unescape
>>> unescape('&copy; &euro;')
© €

Python < 3.5

Offizielle Dokumentation für HTMLParser : Python 3

>>> from html.parser import HTMLParser
>>> pars = HTMLParser()
>>> pars.unescape('&copy; &euro;')
© €

Hinweis: Dies wurde zugunsten von html.unescape() .

Python 2.7

Offizielle Dokumentation für HTMLParser : Python 2.7

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

3voto

fmalina Punkte 5816

Moderner Ansatz für Python 3:

>>> import html
>>> html.unescape('&copy; &euro;')
© €

https://docs.python.org/3/library/html.html

1voto

Benson Punkte 22021

Es gibt eine Funktion aquí wie in dem von Fred verlinkten Beitrag beschrieben. Hierher kopiert, um die Dinge einfacher zu machen.

Dank an Fred Larson für den Hinweis auf die andere Frage zu SO. Dank an dF für die Veröffentlichung des Links.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X