Python GTFS-realtime 言語バインディング¶
GTFS-realtime プロトコル バッファ仕様から生成された Python クラスを提供します。これらのクラスを使用すると、バイナリ プロトコル バッファ GTFS-realtime データ フィードを Python オブジェクトに解析できます。
依存関係の追加¶
独自のプロジェクトで gtfs-realtime-bindings
クラスを使用するには、まず PyPI リポジトリ からモジュールをインストールする必要があります。
# Using easy_install
easy_install --upgrade gtfs-realtime-bindings
# Using pip
pip install --upgrade gtfs-realtime-bindings
サンプル コード¶
次のコード スニペットは、特定の URL から GTFS リアルタイム データ フィードをダウンロードし、それをFeedMessage (GTFS リアルタイム スキーマのルート タイプ) として解析し、結果を反復処理する方法を示しています。
from google.transit import gtfs_realtime_pb2
import requests
feed = gtfs_realtime_pb2.FeedMessage()
response = requests.get('GTFS-REALTIME ソースの URL をここに入力します')
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 生成コード セクションをご覧ください。