用python寫爬蟲程序時,總是出現如下的類似錯誤:
UnicodeEncodeError:'gbk' codec can't encode character '\xa9' in position 0:illegal multibyte sequence
問題:
python的print()方法的問題。在python中, print()方法在Win7的默認編碼是gbk,它在打印時,並不是所有的字符都支持的。 而且這個問題一般也就是在cmd中才會有。 在cmd中是改變標准輸出編碼:
修改准輸出編碼
import io import sys #改變標准輸出的默認編碼 #utf-8中文亂碼 sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030')
編碼名稱:
編碼名稱 | 用途 |
---|---|
utf8 | 所有語言 |
gbk | 簡體中文 |
gb2312 | 簡體中文 |
gb18030 | 簡體中文 |
big5 | 繁體中文 |
big5hkscs | 繁體中文 |
參考博客:https://blog.csdn.net/jim7424994/article/details/22675759#