2009-04-08 18 views
13

Tôi có một văn bản html như thế này:Thay thế đơn vị html với utf-8 ký tự tương ứng trong Python 2.6

<xml ... > 

và tôi muốn chuyển nó sang một cái gì đó có thể đọc được:

<xml ...> 

Bất kỳ dễ dàng (và nhanh) để làm điều đó bằng Python?

+1

Tôi nghĩ rằng câu hỏi là một bản sao của điều này: http://stackoverflow.com/questions/57708/convert-xml-html-entities-into-unicode-string-in-python –

+0

Bản sao có thể có của [Decode HTML entity trong chuỗi Python?] (http://stackoverflow.com/questions/2087370/decode-html-entities-in-python-string) – csl

Trả lời

21

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

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

-1 vì: "Không được chấp nhận kể từ phiên bản 2.6" – webjunkie

+0

webjunkie: sửa liên kết. – vartec

+0

unescape chỉ là một chức năng nội bộ của HTMLParser (và nó không được ghi lại trong liên kết của bạn). tuy nhiên tôi có thể sử dụng việc triển khai. 10x rất nhiều – Alexandru

1

Có một chức năng here nào đó, như liên kết từ bài Fred chỉ ra. Sao chép ở đây để làm mọi thứ dễ dàng hơn.

Ghi có cho Fred Larson để liên kết với câu hỏi khác trên SO. Tín dụng cho dF để đăng liên kết.