本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
以下文章来源于腾讯云 作者:十四君
( 想要学习Python?Python学习交流群:1039649593,满足你的需求,资料都已经上传群文件流,可以自行下载!还有海量最新2020python学习资料。 )
对于网站采用不容易出异常的方式将网页源码存为文件,一般使用wb的形式写入,取requests返回的response.content
with open(save_file,"wb") as f:
f.write(response.content)
读取了一个.html的wb形式写入的文件,然后报错:
'utf-8' codec can't decode byte 0xfc in position 14: invalid start byte
解决方法很简单,用各种text reader(我用atom )将文件打开,我发现当设置编码格式为GBK 的时候,中文显示正常,因此 我的文件编码形式是这样的:’GBK’
确定了该wb写入的文件是gbk编码,那么读取的时候也一样加上参数就行了
with open(file_path,"r",encoding='gbk') as f:
html = f.read()
另外,文件中有不可理解的错误字符,可以用 errors=”ignore” 来忽略之
with open("a.html","r",encoding='GBK', errors="ignore") as f:
html = f.read()