将urllib2提取的gzip压缩数据转换为HTML

jac*_*ack 5 python gzip urllib2

我目前使用mechanize来读取gzip压缩的网页,如下所示:

br = mechanize.Browser()
br.set_handle_gzip(True)
response = br.open(url)
data = response.read()
Run Code Online (Sandbox Code Playgroud)

我想知道如何将urllib2提取的gzip压缩数据解压缩为HTML文本?

req = urllib2.Request(url)
opener = urllib2.build_opener()
response = opener.open(req)
data = response.read()
if response.info()['content-encoding'] == 'gzip':
    HOW TO DECOMPRESS DATA TO HTML
Run Code Online (Sandbox Code Playgroud)

Jor*_*eña 14

试试这个:

import StringIO
data = StringIO.StringIO(data)
import gzip
gzipper = gzip.GzipFile(fileobj=data)
html = gzipper.read()
Run Code Online (Sandbox Code Playgroud)

html现在应该持有HTML(打印看看).有关详细信息,请参见此处