2 回答
TA贡献1818条经验 获得超3个赞
我认为您在上面遇到的问题是您的文本已经是 unicode 格式,而您正试图将其再次转换为 unicode,这导致了您的错误。
下面的代码对我有用,并给出了如下所示的输出。
from bs4 import BeautifulSoup
text = "Albert Einstein’s Theory of Relativity: Should We Worry…?"
parsed_html = BeautifulSoup(text)
print 'Original Type: ' + type(text)
print 'Original Text: ' + text
print 'Parsed Type: ' + type(parsed_html.text)
print 'Parsed Text: ' + parsed_html.text
输出:
Original Type: <type 'str'>
Original Text: Albert Einstein’s Theory of Relativity: Should We Worry…?
Parsed Type: <type 'unicode'>
Parsed Text: Albert Einstein’s Theory of Relativity: Should We Worry…?
使用 BeautifulSoup4 版本 4.7.1
点安装 bs4
TA贡献1875条经验 获得超5个赞
事实证明,原因HTMLEntitiesToUnicode()
对我不起作用是因为我正在从 .json 文件中读取数据,该文件已写入但未指示应将其保存在 .json 文件中utf-8
。解决这个问题,然后HTMLEntititesToUnicode()
如上所述使用效果很好。
添加回答
举报