对于网站采用不容易出异常的方式将网页源码存为文件,一般使用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()
原创文章,转载请注明: 转载自URl-team
本文链接地址: python爬虫文件存储通用方法,编码错误解决 ‘utf-8’ codec can’t decode byte 0xfc in position 14: invalid start byte