python - 将 urllib2 获取的 gzip 数据转换为 HTML

标签 python gzip urllib2

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

br = mechanize.Browser()
br.set_handle_gzip(True)
response = br.open(url)
data = response.read()

我想知道如何将 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

最佳答案

试试这个:

import StringIO
data = StringIO.StringIO(data)
import gzip
gzipper = gzip.GzipFile(fileobj=data)
html = gzipper.read()

html 现在应该包含 HTML(打印以查看)。参见 here了解更多信息。

关于python - 将 urllib2 获取的 gzip 数据转换为 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1704754/

相关文章:

python - 数据框的 Pandas 合并

python - 是否可以在 django 模板中定义并稍后重新定义变量?

python - pip 成功安装软件包,但从命令行找不到可执行文件

python - Pandas :将日期和时间加入一个日期时间列

python - tmpfile 和 gzip 组合问题

Java - 如何对java对象进行Gzip压缩

java - 在java中使用GZIP压缩文件

python urllib2 - 在所有脚本运行后读取页面

python - 如何在 python 中使用 cookielib 和 httplib "keep-alive"?

Python写入文件