2 回答

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊
我認(rèn)為您在上面遇到的問(wèn)題是您的文本已經(jīng)是 unicode 格式,而您正試圖將其再次轉(zhuǎn)換為 unicode,這導(dǎo)致了您的錯(cuò)誤。
下面的代碼對(duì)我有用,并給出了如下所示的輸出。
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
點(diǎn)安裝 bs4

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超5個(gè)贊
事實(shí)證明,原因HTMLEntitiesToUnicode()
對(duì)我不起作用是因?yàn)槲艺趶?.json 文件中讀取數(shù)據(jù),該文件已寫(xiě)入但未指示應(yīng)將其保存在 .json 文件中utf-8
。解決這個(gè)問(wèn)題,然后HTMLEntititesToUnicode()
如上所述使用效果很好。
添加回答
舉報(bào)