做为一个python萌新,今天在写代码,解析HTML网页的时候,python总是提示无法正确的解析,显示:
python3 UnicodeEncodeError: 'gbk' codec can't encode character '\xXX' in position XX
后来多方查证,看到博主山鬼谣的博客:https://blog.csdn.net/u013066244/article/details/53057411。
最终解决了这一问题,其中的主要问题就是python中自带的print函数的局限性,它在win7中的默认编码是gbk,所以在cmd中并不是全部适用,解决问题的方法,是修改print的默认编码格式。
代码如下:
# import urllib.request
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030') #改变标准输出的默认编码
修改完之后就没有问题了。