Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python 解析网络数据包

python 解析网络数据包

作者头像
py3study
发布于 2020-01-08 10:51:43
发布于 2020-01-08 10:51:43
1.3K00
代码可运行
举报
文章被收录于专栏:python3python3
运行总次数:0
代码可运行

1、问题描述

网络数据包,我已经使用mitmproxy代理抓取了,但是,数据包有些数据是gzip进行编码的,那么怎么还原成原始报文呢?使用的语言是python。

2、网上资料

使用的方法,网上有zlib和gzip。使用gzip.decompress这个函数可以直接解密,可惜我的版本不支持。然后网上说的gzip都是打开一个文件之类的。

使用zlib,一直爆出error 3 和error 5的错误。

在C语言下可以实施的,目前是不能实现了。

3、突破口

因为是gzip加密,所以还是瞄准gzip,

有这么一个加密语句:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#!/usr/bin/env python    
# encoding=utf-8    
    
import urllib2, httplib    
import StringIO, gzip   
  
#解压gzip  
def gzdecode(data) :  
    compressedstream = StringIO.StringIO(data)  
    gziper = gzip.GzipFile(fileobj=compressedstream)    
    data2 = gziper.read()   # 读取解压缩后数据   
    return data2

(来源:http://blog.csdn.net/wzq9706/article/details/25122417)

那么只需要将我的流导入这个,就可以进行解密了。

还有牵涉的就是编码方式了。这个编码方式。在sqlite3里面很麻烦的。不过这个语句很有效果:

conn.text_factory = str

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/08/31 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python爬虫必备的8大技巧,收藏!
想要快速学习爬虫,最值得学习的语言一定是Python,Python应用场景比较多,比如:Web快速开发、爬虫、自动化运维等等,可以做简单网站、自动发帖脚本、收发邮件脚本、简单验证码识别脚本。
测试开发技术
2024/11/06
1410
Python爬虫必备的8大技巧,收藏!
python3使用gzip压缩与解压缩
本文由腾讯云+社区自动同步,原文地址 https://stackoverflow.club/article/python-gzip/
羽翰尘
2019/11/20
8.9K0
python实例代码爬虫_python 网络爬虫实例代码
一共两个文件,一个是toolbox_insight.py,是一个工具文件另一个是test.py,是一个用到toolbox_insight.py中工具的测试文件 代码示例:
全栈程序员站长
2022/11/15
1.4K0
Python爬虫:一些常用的爬虫技巧总结
转自:开源中国 http://my.oschina.net/jhao104/blog/647308 用python也差不多一年多了,python应用最多的场景还是web快速开发、爬虫、自动化运维:写过简单网站、写过自动发帖脚本、写过收发邮件脚本、写过简单验证码识别脚本。 爬虫在开发过程中也有很多复用的过程,这里总结一下,以后也能省些事情。 1、基本抓取网页 get方法 import urllib2 url = "http://www.baidu.com" response = urllib2.urlo
Crossin先生
2018/04/17
8910
Python加解压文件gzip库操作一文详解
Gzip是若干种文件压缩程序的简称,通常指GNU计划的实现,此处的gzip代表GNU zip。也经常用来表示gzip这种文件格式。
fanstuck
2024/09/30
4220
Python加解压文件gzip库操作一文详解
史上最全 Python 爬虫抓取的技巧总结
学用python也有3个多月了,用得最多的还是各类爬虫脚本:写过抓代理本机验证的脚本,写过在discuz论坛中自动登录自动发贴的脚本,写过自动收邮件的脚本,写过简单的验证码识别的脚本,本来想写google music的抓取脚本的,结果有了强大的gmbox,也就不用写了。 这些脚本有一个共性,都是和web相关的,总要用到获取链接的一些方法,再加上simplecd这个半爬虫半网站的项目,累积不少爬虫抓站的经验,在此总结一下,那么以后做东西也就不用重复劳动了。 1.最基本的抓站 import urllib2
小小科
2018/05/04
1.4K0
史上最全 Python 爬虫抓取的技巧总结
PYTHON开源项目及示例代码
cStringIO 是 C 语言实现的,提供高性能;而 StringIO 是 Python 实现的,提供 Unicode 兼容性。
py3study
2020/01/06
3.4K0
Python--import---语法-
前文提到 import 指令是用来载入 module 的,如果需要,也会顺道做编译的事。但 import 指令,还会做一件重要的事情就是把 import 的那个 module 的代码执行一遍,这件事情很重要。Python 是解释执行的,连函数都是执行的时候才创建的。如果不把那个 module 的代码执行一遍,那么 module 里面的函数都没法创建,更别提去调用这些函数了。
py3study
2020/01/07
9160
相关推荐
Python爬虫必备的8大技巧,收藏!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验