环境为Win11,Visual Studio 2022,Python3.9,requests和chardet模块
在学习Python
requests
模块中的Get
函数的时候,用Visual Studio 2022
新建和编辑.py
文件Debug时报如下错误:
SyntaxError: (unicode error) ‘utf-8’ codec can’t decode byte 0xc7 in position 0: invalid continuation byte
第一次记录
看这个报错基本可以确定是编码
问题,搜索后按照网上的方法在代码中指定网页编码为utf-8
,保存,Debug,再次报错。
第二次记录
检查代码是否有编码不一致导致的问题,例如代码中有中文字符等,经过搜索,又引用chardet
模块,自动检测网页编码,且在中文处自动转换对应的编码格式,保存,Debug,再次报错。
以为是代码上的问题,后来也改了很多次代码,无果。卒。
在这个问题上弄了一晚上,终于找到了原因和解决办法。
原因及解决办法
原因:在项目中新建.py
文件,默认保存文件时的编码为简体中文GB2313-代码页936
,导致在Debug时报编码错误。
解决办法:原因找到了那就简单了。