解决Python print 输出文本显示 gbk 编码错误问题
前阵子想爬点东西,结果一直提示错误UnicodeEncodeError:‘gbk'codeccan'tencodecharacter‘\xa0'inposition,在网上一查,发现是Windows的控制台的问题。控制台的编码是GBK,Python是UTF-8,造成了冲突。下面给出三种解决方法。
第一种方法:直接替换出错的内容
importrequests url='https://blog.csdn.net/jianhong1990/article/details/17349537' print(requests.get(url).text.replace('\xa0',''))
第二种方法:再解码
先用GBK编码,加个ignore丢弃错误的字符,然后再解码。
importrequests url='https://blog.csdn.net/jianhong1990/article/details/17349537' print(requests.get(url).text.encode('gbk','ignore').decode('gbk')
第三种方法:修改控制台编码
新建一个cmd.reg,输入代码:
WindowsRegistryEditorVersion5.00 [HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe] "CodePage"=dword:0000fde9 "FontFamily"=dword:00000036 "FontWeight"=dword:00000190 "FaceName"="Consolas" "ScreenBufferSize"=dword:232900d2 "WindowSize"=dword:002b00d2
保存后运行。如果Ctrl+B无效,用python.exe打开.py程序后再试一次。
总结
以上所述是小编给大家介绍的解决Pythonprint输出文本显示gbk编码错误问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!