我正在做一些Web抓取,并且站点经常使用HTML实体来表示非ascii字符。Python是否有一个实用程序可以接受带有HTML实体的字符串并返回unicode类型?
Web
HTML
ascii
unicode
例如:
我回来了:
ǎ
代表带有音调标记的“ǎ”。以二进制形式表示为16位01ce。我想将html实体转换为值 u'\u01ce'
“ǎ”
u'\u01ce'
标准库自己的HTMLParser具有未记录的函数unescape(),它完全按照你的想法执行操作:
HTMLParser
unescape()
import HTMLParser h = HTMLParser.HTMLParser() h.unescape('© 2010') # u'\xa9 2010' h.unescape('© 2010') # u'\xa9 2010'