web-dev-qa-db-ja.com

WindowsでPythonのプロトコルバッファを使用するにはどうすればよいですか?

Pythonプログラムでプロトコルバッファを使用しようとしましたが、動作させることができません。Windows8マシンを実行していて、Python 2.7.6およびPython 3.3。Pythonのバイナリプロトコルバッファコンパイラをダウンロードし、それを使用してmyProto_pb2.pyファイルからmyProto.protoを生成しましたが、 Pythonプログラムを実行すると次のエラーが発生します:

「importmyProto_pb2」行から、プロトコルバッファバージョン2.5からPython 2.7.6を使用すると、次のエラーが発生します。

from google.protobuf import descriptor as _descriptor
  ImportError: No module named google.protobuf

WindowsでPythonからプロトコルバッファを正しくインストールして実行するにはどうすればよいですか?

9
user2399973

WindowsでPythonからプロトコルバッファを正しくインストールして実行するにはどうすればよいですか?

他のパッケージと同様に、インストールする場合は実際にインストールする必要があります。パッケージをソースディレクトリに置いて実行しようとすると、動作する可能性がありますが、ほとんどのパッケージはそのようには動作しません。トップレベルのパッケージimportingのようなものを取得し、それが他の何かをimportしようとすると、数行下がって失敗する傾向があります…まさにあなたが見ているように。

インストール可能なパッケージは、GoogleCodeからのメインのダウンロードパッケージに含まれていると思います。少なくとも、win32パッケージではないにしても、ソースパッケージには当てはまります。そして、pythonディレクトリ内には、それをインストールするための完全な手順があります。基本的に:

C:\path\to\protobuf-2.5.0> cd python
C:\path\to\protobuf-2.5.0\python> python setup.py build
C:\path\to\protobuf-2.5.0\python> python setup.py test
C:\path\to\protobuf-2.5.0\python> python setup.py install

しかし、それがwin32のビルド済みパッケージに付属していない場合、またはそれがもう存在しない場合、またはPyPIからインストールすることを好む場合は、それも利用できます そこに 。したがって、 pipがインストールされている :と仮定します。

pip install protobuf
10
abarnert