快手直播弹幕采集-python-protobuf解析

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、protobuf是什么?
  • 二、使用步骤
    • 1.js逆向
      • (1)F12控制台抓包找到传递消息的ws
      • (2)进入ws所在的js文件找到json格式的protobuf定义文件
    • 2.根据步骤1定义.proto文件
  • 结果展示


前言

本文主要讲解采集protobuf后,如何定义.proto文件,文章内容仅供参考学习,如有侵权,联系删除。


一、protobuf是什么?

Protobuf是一种轻便、高效的结构化数据存储格式,可以用于结构化数据串行化,很适合做数据存储或RPC数据交换格式。

它通常用于ws通信协议,像dou_yinkui_shou中的直播数据流都是protobuf格式的

二、使用步骤

1.js逆向

(1)F12控制台抓包找到传递消息的ws

快手直播弹幕采集-python-protobuf解析_第1张图片

(2)进入ws所在的js文件找到json格式的protobuf定义文件

快手直播弹幕采集-python-protobuf解析_第2张图片

{
	"nested": {
		"kuaishou": {
						//此处省略........
					"WebLikeFeed": {
									"fields": {
										"id": {
											"type": "string",
											"id": 1
										},
										"user": {
											"type": "SimpleUserInfo",
											"id": 2
										},
										"sortRank": {
											"type": "uint64",
											"id": 3
										},
										"deviceHash": {
											"type": "string",
											"id": 4
										}
									}
								},
							//省略......

2.根据步骤1定义.proto文件

...省略,这边用上面的WebLikeFeed 为例
message WebLikeFeed {
    optional string id = 1;
    optional SimpleUserInfo user = 2;
    optional uint64 sortRank = 3;
    optional string deviceHash = 4;
}
...省略

结果展示

快手直播弹幕采集-python-protobuf解析_第3张图片

快手直播弹幕采集-python-protobuf解析_第4张图片

你可能感兴趣的:(快手逆向,python,1024程序员节)