爬虫处理返回的是gzip格式数据

收藏
数据提取 urllib2 gzip
28
Feb 19, 2018

网页传输数据格式有时候是gzip格式的数据,那么需要我们解压,例如 模拟有道发送post请求进行翻译,仅仅头部仅仅携带user-agent是不行的,还出现了一个新的问题就是有道返回的数据给事不是text/html的格式,而是返回数据格式gzip格式

回答

MrSun回答

解决方法:

    请求头中需要添加user-agent以外的其他信息例如cookie等

    对获取下来的gzip数据进行解压缩解压缩方式

     from io import StringIO,BytesIO  #python3 使用bytesio方法

     from StringIO import StringIO  #python2使用

     import gzip

    #以下代码以python3位例子

    buf = BytesIO(bytestr)       # bytestr就是获取的gzip数据

    f = gzip.GzipFile(fileobj=buf)

    html_response = f.read()    #得到解压缩的html内容

(1)

提交成功