博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python - bilibili(四)抓包数据乱码
阅读量:6245 次
发布时间:2019-06-22

本文共 723 字,大约阅读时间需要 2 分钟。

上一篇文章中不知道大家发现端倪木有,两张照片对比很明显发现第一张是信息很明显的,第二张是乱码的。

为什么会出现这种情况?细心的童鞋可能发现是我们发送给服务器的请求连接的数据不同:

第一张图的信息是{"roomid":98284,"uid":271298361556770}

第二张图的信息是{"uid":276194535568357,"protover":2,"roomid":98284}

roomid是真实的房间号,uid是随机生成的一串数字,可以直接复制登录。

相比而言,第二张多了个"protover":2参数。其实第一张图是抓取手机客户端的数据包,第二张图是抓取电脑网页数据包。所以有没有这个"protover":2这个参数都是可以连接到弹幕服务器的。

所以我们可以推断抓包的最容易抓的数据是手机端,其次是wap端,最后才是电脑端。

但是好多时候我们抓包数据的都是如图二所示的一串串乱码,不管你用utf8还是用gbk编码都达不到图一的那种效果。

这种数据其实是一种压缩数据gzip,目前wireshark还不支持这种压缩数据的解压模式。

现在网站在传输中基本上都是用压缩模式进行传输的,所以你抓取到的数据是压缩后的数据,在你看来就是彻彻底底的乱码,无从下手。

如图所示,访问我的博客首页,抓取服务器传送回来的网页数据是gzip模式,而我们平时访问的网页是经过浏览器解压数据并渲染然后呈现给我们。

既然分析哔哩哔哩服务器传送的是gzip数据,那么解决办法就很简单了,安装第三方zlib包或者gzip包都可以解决这个问题。

 

系列上一章:

转载于:https://www.cnblogs.com/keinlee/p/7132835.html

你可能感兴趣的文章
shared_ptr 知识汇总
查看>>
快速排序
查看>>
排版与缩写
查看>>
C#使用xpath查找xml节点信息
查看>>
简单的语句统计所有用户表尺寸大小
查看>>
作业四:个人项目---小学四则运算
查看>>
漂亮的按钮样式-button
查看>>
post请求方式的翻页爬取内容及思考
查看>>
VC++ MFC如何生成一个可串行化的类
查看>>
php 变量引用,函数引用
查看>>
NET生成缩略图
查看>>
微软企业库5.0 学习之路——第二步、使用VS2010+Data Access模块建立多数据库项目...
查看>>
渗流稳定性分析(MATLAB实现)
查看>>
POJ2253 Frogger(最短路径)
查看>>
动画总结?
查看>>
HDU 2044 一只小蜜蜂 *
查看>>
Java 斜杠 与 反斜杠
查看>>
垂直居中
查看>>
idea下maven项目,样式css、js更新后,页面不显示更新内容
查看>>
bzoj 1001 平面图转对偶图 最短路求图最小割
查看>>