我使用BeautifulSoup
從網頁中抓取數據。爲了測試,我將所有內容輸出到控制檯。一切工作正常。現在我想將數據寫入到文件中,但一段時間後收到以下錯誤:Python:字符編碼問題
UnicodeEncodeError: 'latin-1' codec can't encode character '\u0107' in position 57: ordinal not in range(256)
這個問題似乎是這封信:ć
我用這個代碼寫入文件:
with open('data.txt', 'a',encoding='iso-8859-1') as f:
f.write(text+'\n')
如果我更改代碼的編碼encoding='utf-8'
異常消失,然而在寫書面文件看上去是錯誤的特殊字符:Kuzmanović應庫茲曼諾維奇
我想我的問題是我想保存數據的文件沒有正確的編碼。我用utf-8創建了新文件,現在它似乎可以工作。我肯定會回來報告。 – beta
如果將文件保存爲'utf-8',那麼您必須告訴打開該文件的工具使用UTF-8,或者將其設置爲使用UTF-8作爲默認值(如果可能的話)。 –