B 站弹幕 protobuf 分析

首先了解 Protobuf 是什么 ?

参考1

  1. 网站调试分析
    首先 打开 网址的开发者工具,找到所发起的请求

    怎么区分 是不是protobuf 格式呢,可以看看请求的返回类型
    content-type: application/octet-stream

    找到 对应请求链接,然后查看参数情况,和分析参数
oid  和 pid 才是要看的分析的参数
type: 1
oid: 742644858
pid: 597419733
segment_index: 1
  1. 请求分析
    请求是个 xhr 请求,可以打上 xhr 的断点分析,通过调用栈去分析来源和前后关系

    通过 xhr 断点断下,后进去对应的调用栈JS文件,在里面搜索请求的参数 : segment_index
    这里参数也长,如果能搜索到,那结果会相对少,更好定位到 发起请求的位置
 var r = dr.b.DM_PB + "?type=1&oid=" + a.cid + "&pid=" + a.aid + "&segment_index=" + i;

可以看到 代码,是拼接的 url ,发起弹幕请求的url ,也能看到 protoBuffer 字眼,大概率就是这个位置了,先打上断点,然后往下跟,调试
继续断点调试,往下跟,然后到这里,可以看到

var r = a.protoMessage[t].decode(new Uint8Array(i.data)), o = a.protoMessage[t].toObject(r);

在控制台 打野 r 和 o 可以看到 就是 弹幕的 信息

protobuf 数据格式 的解析 ,可以看到 这个 e 的结构对应的字段值类型

JSON.stringify(e)

然后通过 json 工具,看到结构化的数据,和数据里面的键 和 数据类型 能对应上

到这里 大概就是 over了,然后 用 protobuf 的格式 去 解析数据

  1. 参考 Protobuf 的使用

    解析结果 :

    最终的结果 也是 ok ok ok 的 ,over !

JS逆向加密——B 站弹幕 protobuf 分析相关推荐

  1. JS逆向加密——某宝sign参数分析

    某宝sign参数分析 这里只做分析用途, 作为学习和交流 !!!! 1. 抓包分析  (这里是店铺搜索来作为分析) 多抓几次 包对比 动态变化的参数 : page  页数 q 搜索关键字 t 时间戳 ...

  2. js逆向加密五邑大学教务系统密码AES实现模拟登录(仅供参考)

    最近下班无聊,就看了一下之前写的教务系统模拟登录代码(python-爬虫),整体逻辑大概自己总结了一下: 1.请求验证码图片. 2.对输入的密码进行加密. 3.封装账号,密码,验证码,发送post请求 ...

  3. python爬虫JS逆向加密破解之百度翻译

    最近在从基础学习JS逆向,来分享一下百度翻译JS逆向的整个过程,也有助于自己加深记忆. JS逆向可以说是爬虫工程师必备的知识点了,但是如果对前端知识不够了解还是学起来很有难度的. 想学习的话可以在B站 ...

  4. python爬虫js逆向加密,Web爬虫处理参数js加密、js混淆、js逆向

    中国空气质量在线监测平台(https://www.aqistudy.cn/html/city_detail.html)在众多的练习中,关闭了前台数据信息的展示,也就是说现在网页是这样的: 但我们主要学 ...

  5. JS逆向加密——美团店铺详情_token参数

    美团店铺详情_token参数 网址 :https://sh.meituan.com/meishi/c17/ 可以在请求地址 找到 getPoiList 的请求链接,请求参数有多个,但是多次请求对比发现 ...

  6. JS逆向 | 某售房网高度混淆分析(二)

    声明:本文只作学习研究,禁止用于非法用途,否则后果自负,如有侵权,请告知删除,谢谢! 本文接着上篇文章分析,没看过的请先看<JS逆向 | 某售房网高度混淆及浏览器指纹分析(一)>  直接搜 ...

  7. B 站弹幕 protobuf 协议还原分析

    这是「进击的Coder」的第 657 篇技术分享 作者:TheWeiJun 来源:逆向与爬虫的故事 " 阅读本文大概需要 3 分钟. " 目录 一.什么是protobuf? 二.网 ...

  8. JS逆向之爱给网message分析

    声明:本文仅限交流学习使用,请勿使用在任何非法商业活动,禁止用于非法用途.否则后果自负.如有侵权,请告知删除,谢谢!  目录 一.接口表单分析 二.分析JS 三.调试输出结果 一.接口表单分析 本期网 ...

  9. 【2021-01-05】JS逆向之B站模拟登入(含极验点选)

    文章目录 前言 一.页面分析 1.1 模拟页面请求 二.参数破解 2.1 登入参数password解密 2.2 验证码参数w破解 三.实现模拟登入 四.总结 前言 这次算是我自己的一次小突破吧,毕竟之 ...

最新文章

  1. 中国互联网+光伏发电行业商业模式创新与投资机会深度研究报告
  2. HTMLDOM中三种元素节点、属性节点、文本节点的测试案例
  3. struts2 action间跳转传值
  4. 【转载】linux-查询rpm包相关安装、卸载脚本
  5. 【C++学习】对私有构造析构函数的思考:new一个类对象vs直接创建类对象
  6. 有轻功:用3行代码让Python数据处理脚本获得4倍提速
  7. 忘记commit也会造成select查询的性能问题
  8. 人人都该懂点儿TCP---ACK延缓(转)
  9. dell服务器进系统失败,如何解决Dell服务器系统开机提示错误
  10. Windows如何后台运行bat文件
  11. 嵌套iframe页面做打印去掉页眉页脚
  12. 3000元台式电脑组装配置单2022 3000元组装电脑配置推荐2022
  13. 鼠标右键转圈圈_鼠标点击右键后一直转圈圈
  14. 找不到合适的工作怎么办
  15. getline()函数详解
  16. SQL计算某个字符的出现次数
  17. 锂电池和锂离子电池命名规则
  18. 订单中心,究竟是分还是合?
  19. 汇编中各寄存器的作用(16位CPU14个,32位CPU16个)和 x86汇编指令集大全(带注释)...
  20. php 生成带有小数的随机数

热门文章

  1. STL — 迭代器设计思维(一)
  2. git did not exit cleanly (exit code 128)处理方式
  3. ur机器人计算机模拟仿真,ur机器人编程-设置工具
  4. 视频通话和直播技术webRTC和RTMP探究
  5. 浏览器使用华视电子设备读取身份证信息
  6. QT华视身份证读卡器二次开发(获取姓名身份证号)
  7. app维持h5登录状态_维持团队设计质量的5种工具
  8. python批量读取文件内容_Python从数据库读取大量数据批量写入文件的方法
  9. B 站上有哪些很好的学习资源?
  10. android手机 一键还原,安卓手机一键恢复通讯录