Protobuf协议 web端某音弹幕解析

Protobuf协议 web端某音弹幕解析_第1张图片

在网络通信中,我们经常需要通过一种约定俗称的方式来进行数据交互。在这中间,有很多如xml,json等等很常见的数据格式。

xml

xml是一种标签语言,通过content来描述数据内容,出现时间最早,应用最广泛,但是传输效率低。

json

json作为一种轻量级的数据交换格式,其无效的字符数远远低于xml,且原生被js支持,故经常出现在前端请求中以及app与服务器的数据交互。

*protobuf

protobuf是google的一种数据交换格式,相比于其他的几种交互方式,其优势在于数据的重编码,在传输时会将其编译为二进制数据流,而当需要使用时再进行反序列化。
protobuf支持几乎绝大多数的语言。

如果你还是一头雾水,请自行搜索查找,本文不做太多的描述。

那么我们应该如何解析protobuf协议下的数据呢。步骤我罗列了以下几点:

第一步:配置 python 开发环境(请自行学习)

第二步:protoc环境配置,根据自身系统进行安装

下载地址https://github.com/protocolbuffers/protobuf/releases/,选用最新版本即可。

Protobuf协议 web端某音弹幕解析_第2张图片

第三步:编写proto 文件,例如:user.proto

Protobuf协议 web端某音弹幕解析_第3张图片

第四步:

  • 执行 protoc --python_out=. *.proto 生成 user_pb2.py

 第五步:

           with open('data.txt', 'rb') as f: resp = f.read()

                 print("--------------原始数据--------------")

                 print(resp)         

         str_url = base64.decodebytes(resp)

         print("--------------解析后的数据--------------") on_message(str_url)

源码地址:  protocbuf,某音直播间弹幕分析-Python文档类资源-CSDN下载

你可能感兴趣的:(python,开发语言,pycharm,用户运营,网络协议)