Почему я вижу, “что разве импорт не может назвать descriptor_pb2” ошибкой при использовании Google Protocol Buffers?

В моем случае проблема состояла в том, что https был неспособен запуститься правильно, потому что Слушают 443, был в директиве "IfDefine SSL", но мой апач не запустил с-DSSL опции. Фиксация должна была изменить мой apachectl сценарий в:

$HTTPD -k $ARGV

к:

$HTTPD -k $ARGV -DSSL

Hope, которая помогает кому-то.

7
задан Jonas 20 April 2010 в 18:14
поделиться

2 ответа

Я считаю, что вам нужно сгенерировать descriptor_pb2.py с помощью protoc самостоятельно:

protoc descriptor.proto --python_out=gen/

gen / - это папка с сгенерированными классами python.

После этого, следующее работает нормально:

sys.path.append('../gen')
from descriptor_pb2 import FileDescriptorSet

../ gen / descriptor_pb2.py должен существовать.

9
ответ дан 6 December 2019 в 11:49
поделиться

Обязательно установите библиотеку времени выполнения protobuf, как указано в файле readme. Вы не можете просто использовать исходный код непосредственно из пакета, так как descriptor_pb2.py должен быть сгенерирован protoc (компилятор protobuf) как часть процесса установки.

2
ответ дан 6 December 2019 в 11:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: