2016-10-25 2 views
0

Моя цель - проанализировать файл протоколов буферов с расширением filename .pb.string. Загрузите Protobuff с помощью Homebrew на Mac. Ran protoc --version и имеет версию libprotoc 3.1.0.Чтение файла буферов протокола с использованием Python

Но когда я запускаю Python, он говорит, что не может найти модуль. Я изменил имя своего .pb на _pb2.py и импортировал модуль в свой скрипт Python.

import filename_pb2 as proto 

Я пользуюсь Документами Google, но до сих пор не повезло. У меня также возникают проблемы с компиляцией файлов Protobuf .so через Python. Я просто не могу обработать, как Protobuf и Python соединяются вместе. Может ли кто-нибудь направить меня?

Python Ошибка

import response_123_pb2 as proto 
ImportError: No module named response_123_pb2 
+1

«не можете найти модуль»? Пожалуйста, напишите полную ошибку. –

ответ

1

Вы должны скомпилировать файл .proto в * _pb2.py файла:.

protoc --python_out =/YourProto.proto

Убедитесь, что он создает файл с именем YourProto_pb2.py. Тогда вы можете импортировать его в код с:

import YourProto_pb2 as proto 

Если у вас возникли другие проблемы с компиляцией, то это другое дело. Обязательно ознакомьтесь с этим documentation.