使用zlib.decompress(string, wbits, bufsize)时指定wbits例如,请参阅“疑难解答”的末尾。

故障排除

让我们开始了与下载未知“内容编码”一个字节范围响应(注AA curl命令:我们事先知道这是某种形式的压缩事情,mabye deflate也许gzip ):

export URL="https://commoncrawl.s3.amazonaws.com/crawl-data/CC-MAIN-2016-18/segments/1461860106452.21/warc/CC-MAIN-20160428161506-00007-ip-10-239-7-51.ec2.internal.warc.gz"

curl -r 266472196-266527075 $URL | gzip -dc | tee hello.txt

具有以下响应头:

HTTP/1.1 206 Partial Content

x-amz-id-2: IzdPq3DAPfitkgdXhEwzBSwkxwJRx9ICtfxnnruPCLSMvueRA8j7a05hKr++Na6s

x-amz-request-id: 14B89CED698E0954

Date: Sat, 06 Aug 2016 01:26:03 GMT

Last-Modified: Sat, 07 May 2016 08:39:18 GMT

ETag: "144a93586a13abf27cb9b82b10a87787"

Accept-Ranges: bytes

Content-Range: bytes 266472196-266527075/711047506

Content-Type: application/octet-stream

Content-Length: 54880

Server: AmazonS3

所以给点意见。

让显示前10个字节的十六进制输出: curl -r 266472196-266472208 $URL | xxd

十六进制输出:

0000000: 1f8b 0800 0000 0000 0000 ecbd eb

我们可以看到我们所用的十六进制值工作的一些基础知识。

大致意思是它可能使用一个放气的gzip(1f8b)(0800)没有修改的时间(0000 0000),或任何额外的设置标志(00),采用FAT32系统(00)。

所以到蟒蛇:类似

>>> import requests

>>> url = 'https://commoncrawl.s3.amazonaws.com/crawl-data/CC-MAIN-2016-18/segments/1461860106452.21/warc/CC-MAIN-20160428161506-00006-ip-10-239-7-51.ec2.internal.warc.gz'

>>> response = requests.get(url, params={"range":"bytes=257173173-257248267"})

>>> unknown_compressed_data = response.content

注意到什么?:

>>> unknown_compressed_data[:10]

'\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x00'

就到了减压,让我们只是尝试在随机基础上,(documentation):

>>> import zlib

“zlib.error:错误-2在准备环解压缩数据:不一致流状态 “:

>>> zlib.decompress(unknown_compressed_data, -31)

Traceback (most recent call last):

File "", line 1, in

zlib.error: Error -2 while preparing to decompress data: inconsistent stream state

”错误-3而解压缩数据:不正确报头校验“:

>>> zlib.decompress(unknown_compressed_data)

Traceback (most recent call last):

File "", line 1, in

zlib.error: Error -3 while decompressing data: incorrect header check

” zlib.error:错误-3而解压数据:无效距离太远“:

>>> zlib.decompress(unknown_compressed_data, 30)

Traceback (most recent call last):

File "", line 1, in

zlib.error: Error -3 while decompressing data: invalid distance too far back

Possible s解决方案:

>>> zlib.decompress(unknown_compressed_data, 31)

'WARC/1.0\r\nWARC-Type: response\r\nWARC-Date: 2016-04-28T20:14:16Z\r\nWARC-Record-ID:

python压缩数据长度_如何解码在python HTTP响应中返回的gzip压缩数据?相关推荐

  1. python定义变量长度_超详细的Python变量的基本使用

    这里是一段防爬虫文本,请读者忽略. 本文原创首发于CSDN,作者IDYS 博客首页:https://blog.csdn.net/weixin_41633902/ 本文链接:https://blog.c ...

  2. send函数 获得已发送数据长度_蓝牙BLE开发1--起因与回调函数

    1 起因 笔者在开发蓝牙芯片CC2540,试图取实现大量数据的BLE透传功能,在认真学习了蓝牙4.0协议标准以及TI提供的SDK说明,我总结了两个发送函数,以及两个接收函数的位置. 两个发送函数包括 ...

  3. internetreadfile读取数据长度为0_Go发起HTTP2.0请求流程分析(后篇)——标头压缩

    阅读建议 这是HTTP2.0系列的最后一篇,笔者推荐阅读顺序如下: Go中的HTTP请求之--HTTP1.1请求流程分析 Go发起HTTP2.0请求流程分析(前篇) Go发起HTTP2.0请求流程分析 ...

  4. python补齐空格_如何提高使用Python填补时间序列和数据列表中空白的性能

    我有一个时间序列数据集,由几年来的10赫兹数据组成.一年来,我的数据大约有3.1*10^8行数据(每行有一个时间戳和8个浮点值).我的数据有空白,我需要确定并用"NaN"填充.下面 ...

  5. python自动化数据报告_如何:使用Python将实时数据自动化到您的网站

    python自动化数据报告 This tutorial will be helpful for people who have a website that hosts live data on a ...

  6. python中数据读写_【循序渐进学Python——文件中数据的读写以及操作】

    [循序渐进学Python--文件中数据的读写以及操作] [循序渐进学Python--文件中数据的读写以及操作] [循序渐进学Python--文件中数据的读写以及操作] 相信大家都想过自己有一天,可以用 ...

  7. python数据储存_五种使用python储存数据的方式

    在python编程开发中,总是不可避免的遇到数据储存的问题,下面就介绍python与几种数据储存方式交互的方法. json文件 json是一种轻量级的数据交换格式.采用完全独立于编程语言的文本格式来存 ...

  8. python 最优化算法库_哈工大硕士生用?Python 实现了 11 种经典数据降维算法,源代码库已开放...

    雷锋网 AI 开发者按:网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 种经典的数据抽取(数据降维)算法,包括:PCA. ...

  9. python编写数据库连接工具_详解使用Python写一个向数据库填充数据的小工具(推荐)...

    一. 背景 公司又要做一个新项目,是一个合作型项目,我们公司出web展示服务,合作伙伴线下提供展示数据. 而且本次项目是数据统计展示为主要功能,并没有研发对应的数据接入接口,所有展示数据源均来自数据库 ...

最新文章

  1. Android 功能防抖 的实现
  2. TiKV 成功晋级 CNCF 孵化项目
  3. linux 进程优先级 之设置实时进程 (另一种方式是设置nice值)【转】
  4. log4j写入mysql数据库_log4j日志写入数据库
  5. IMDB是否提供API? [关闭]
  6. Java两种核心机制
  7. 多元化思维其二:“马太效应”之道
  8. 作者:李晓明,男,北京大学教授、博士生导师。
  9. 2008-10-13 XEIM 2.0 beta 准时发布
  10. Microsoft Visual Studio--- 未能加载文件 %CommonDir%\dte90a.olb。未能找到该文件,因此解决此问题的尝试,请重新安装此程序。
  11. ArcGIS 概述
  12. 计算机组成原理与接口技术笔记
  13. 利用IP纯真数据库查询地址
  14. GNSS常用术语(缩略语)总结------------持续更新
  15. 警告: A docBase D:\apache-tomcat-8.5.12\webapps\webapps\projectname inside the host appBase has been
  16. 抖音 Android 包体积优化探索:资源二进制格式的极致精简
  17. Android WifiDisplay分析二:Wifi display连接过程
  18. 推荐几个非常棒的学习计算机语言的网站
  19. 安装visio后,EXCEL打开后滚动鼠标滑轮自动退出解决方法
  20. JS解析JSON中带有括号或者字段以纯数字命名的,要怎么操作

热门文章

  1. 几种常用的设计模式 (Design Pattern)
  2. 一周大事件:玩我的世界开公司
  3. NB-IoT智慧电表解决方案
  4. 马震宇-360问答系统(基于HDPHP)
  5. C#控制Excel的打印格式
  6. Coolfilter 0.5
  7. 数字图像的距离变换算法
  8. win7自带录像工具怎么打开?win7自带录像工具的使用方法
  9. Revit土建建模插件,BIM建模助手(土建插件)功能一览!
  10. Android拨号盘特殊字符串处理