Python抓取数据乱码b'\x1f\x8b\x08\x00\x00\x00\x00\x0....[UnicodeDecodeError]
引入gzip
from urllib import request
import gzipr = request.urlopen(url)content = r.read()# 错误! --> UnicodeDecodeError: # 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte# encoded_content = str(content, encoding='utf-8')# 正解 √encoded_content = gzip.decompress(content).decode("utf-8")
引起乱码的原因是因为目标网站,在HTTP协议中配置了Content-Encoding 字段,这个字段可以改变数据的压缩方法。
以下是目标网站,请求头的截图

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
