grpc proto文件解析器

时间:2017-11-08 20:14:37

标签: python parsing protocol-buffers

我想解析作为gRPC客户端/服务器定义一部分的.proto文件。我只想要一个这样做的起点。我安装了gRPC代码,可以从proto文件中自动生成python代码。我想知道在原型文件中读取的gRPC代码(或那里的开源库)中是否有任何明显的python类,并且以某种有限的方式将它们解析为某种结构化对象?

2 个答案:

答案 0 :(得分:1)

gRPC网页告诉我它使用protobufs语法作为其IDL。 pyparsing源代码分发包含的examples目录包括一个纯Python protobuf解析器。您可以在此处查看:https://sourceforge.net/p/pyparsing/code/HEAD/tree/trunk/src/examples/protobuf_parser.py

答案 1 :(得分:1)

parsy(组合库)有一个解析.proto个文件版本3的示例。您可以在docsrepo中找到它。结果是一个结构化对象,对整个文件使用简单的自定义类(如Proto),该文件具有statements属性,每个导入行包含Import Message对于每条消息等。