[英]Python: Character encoding issue
我使用BeautifulSoup
從網頁上抓取數據。 為了進行測試,我將所有內容輸出到控制台。 那里一切正常。 現在,我想將數據寫入文件,但是一段時間后出現以下錯誤:
UnicodeEncodeError:'latin-1'編解碼器無法在位置57編碼字符'\\ u0107':序數不在范圍內(256)
這個問題似乎是這封信:C
我使用以下代碼寫入文件:
with open('data.txt', 'a',encoding='iso-8859-1') as f:
f.write(text+'\n')
如果我將代碼的編碼更改為encoding='utf-8'
則異常消失,但是書面文件中的特殊字符看起來不正確: Kuzmanović應該是Kuzmanović
您可以使用codecs
通過unicode編寫文本,如下所示:
import codecs
with codecs.open("data.txt", "a", encoding="utf-8") as f:
f.write(text + "\n")
我的問題是我想將數據保存到的文件沒有正確的編碼。 我用utf-8創建了新文件,然后就可以了。
最初,我應該確保創建的文件是UTF-8。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.