Protobuf 的数据反解析

Protobuf 下载安装

参考

https://www.cnblogs.com/luyanjie/p/10403869.html

逆向解析protobuf

获取数据后发现数据部分乱码

res = requests.get(url, headers=headers)
print(res.text)
print(res.headers) # 打印出来 不是json 是protobuf
# print(res.content.decode('UTF-8', 'ignore'))
with open("./11.bin", 'wb') as f: # 二进制流写到.bin文件
f.write(res.content)

借助工具,我们使用上面下载的protoc编译工具,这个工具提供反解析参数

protoc --decode_raw < 11.bin

自己定义 .peoto文件    字段不用全  看需要的字段就行

按照11.bin   里边的key自己定义

定义好文件后执行

protoc ./addressbook.proto  --python_out=./

 详情参考  https://www.yuanrenxue.com/app-crawl/parse-protobuf.html

我的部分截图

.proto文件

py文件

 

原文地址:https://www.cnblogs.com/clbao/p/13367873.html