学习Python3时,在使用urllib进行网页访问的过程中,遇到了返回结果是中文乱码的问题,在网上查找了很多资料,我的解决办法如下:
首先,说一下我的环境:
1.python版本:Python3.6.4
2.使用工具:PyCharm
问题描述:
直接上代码:
打印结果:
b'{"weatherinfo":{"city":"\xe5\x8c\x97\xe4\xba\xac","cityid":"101010100","temp1":"-2\xe2\x84\x83","temp2":"16\xe2\x84\x83","weather":"\xe6\x99\xb4","img1":"n0.gif","img2":"d0.gif","ptime":"18:00"}}'
可以看到city对应的值是乱码
解决办法:
在网上看到许多方法,感觉都太累赘,我的解决办法是:
1.在代码的开头都加上一句“# coding=utf-8”;
2.read()之后再decode();
说明:
在文件开头加上编码貌似没什么必要,但是为了防止以后可能出现编码格式问题,导致代码中出现中文乱码,最好还是都加上这一句。