【发布时间】:2021-06-15 10:34:50
【问题描述】:
我正在使用谷歌 API 来处理上传的文档。我想要实现的是将响应中的 protobuf 保存为 .proto 文件,以便以后使用它。
我可以使用response._pb.SerializeToString(),但是,我不知道以后如何使用它。我尝试将此结果写入.proto 格式的文件,例如:
with open("doc.proto", "wb") as f:
f.write(response._pb.SerializeToString())
但该文件似乎不是一个正确的 .proto 文件,我无法通过 protoc 编译器运行它,如下所示:
protoc -I=. --python_out=. ./doc.proto
我收到一堆错误,例如:
doc.proto:7398:6: Invalid control characters encountered in text.
doc.proto:7398:9: Interpreting non ascii codepoint 225.
doc.proto:7398:12: Invalid control characters encountered in text.
doc.proto:7398:15: Need space between number and identifier.
doc.proto:7398:16: Invalid control characters encountered in text.
总而言之,我只是想序列化/反序列化 protobuf API 响应。
【问题讨论】:
标签: python google-cloud-platform protocol-buffers proto