python爬取網頁內容寫入文件時報錯:UnicodeEncodeError: 'gbk' codec can't encode character '\xf6'

問題描述

  • r = requests.get(url, params)爬取網頁,新建一個文件并保存r.text時報錯
>>> with open("webtext.txt", 'w') as f:
        f.write(r.text)    
Traceback (most recent call last):
  File "<pyshell#18>", line 2, in <module>
    f.write(r.text)
UnicodeEncodeError: 'gbk' codec can't encode character '\xf6' in position 395497: illegal multibyte sequence
  • 意思是'gbk'編解碼器不能編碼Unicode字符'\xf6'

解決途徑

>>> import locale
>>> locale.getpreferredencoding()
'cp936'
  • 所以在open()中把encoding設置為'utf-8'即可:
>>> with open("webtext.txt", 'w', encoding='utf-8') as f:
        f.write(r.text)
1205641
>>>
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容