コンテンツにスキップ

Python GTFS-realtime 言語バインディング

PyPI version

GTFS-realtime Protocol Buffer 仕様から生成された Python クラスを提供します。これらのクラスを使用することで、バイナリ形式の Protocol Buffer GTFS-realtime データフィードを Python オブジェクトに変換して解析することができます。

依存関係の追加

自分のプロジェクトで gtfs-realtime-bindings クラスを使用するには、まず PyPI リポジトリ からモジュールをインストールする必要があります。

# easy_install を使用する場合
easy_install --upgrade gtfs-realtime-bindings

# pip を使用する場合
pip install --upgrade gtfs-realtime-bindings

コード例

以下のコードスニペットは、特定のURLからGTFS-realtimeデータフィードをダウンロードし、それをFeedMessage(GTFS-realtimeスキーマのルート型)としてパースし、結果を反復処理する方法を示しています。

from google.transit import gtfs_realtime_pb2
import requests

feed = gtfs_realtime_pb2.FeedMessage()
response = requests.get('URL OF YOUR GTFS-REALTIME SOURCE GOES HERE')
feed.ParseFromString(response.content)
for entity in feed.entity:
  if entity.HasField('trip_update'):
    print(entity.trip_update)

gtfs-realtime.proto から生成されたPythonクラスの命名規則についての詳細は、Protocol Buffers開発者サイトの Python Generated Code セクションを参照してください。