解码字符串的最简单方法是:

 'Bayern München' -> 'Bayern München'

我正在寻找一些轻量级的东西,也许一个字符串替换将足够好,虽然一个更强大的解决方案将使我更高兴。我希望encodedecode方法会有帮助,但到目前为止我还没有运气。
对于上下文,我正在从一个网页上抓取少量的信息,我不想要一个重量级的解决方案(已经看了scrapy但是虽然很好,但对我来说太多了)。页面报告了一个utf-8编码,但我不知道如何将它转换成一个带有元音变调的字符串,我可以打印给用户。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

我试着去研究这个问题,但是其他的答案对我都没有帮助。例如,Beautiful Soup不能处理这些十六进制代码。
这是我第一个真正的编码问题,抱歉,如果我打开了一罐蠕虫,请忍受我。

最佳答案

看起来这在Python2.6或更高版本中可以工作:

import HTMLParser     # html.parser in Python 3
h = HTMLParser.HTMLParser()
h.unescape('Bayern M&#xFC;nchen')

从技术上讲,这是“内部的”并且没有文档记录,但是它已经在API中存在了很长一段时间,并且没有用前导下划线标记。
找到它;其他的方法也被提到,其中美化组可能是最好的,如果你不介意它的“沉重”

10-08 09:28