Skip to content

friuli-jokyo/python-odpt-train-info

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

python-odpt-train-info

MIT License

ODPT形式で提供される鉄道運行情報を集約して提供するモジュールです。 ダウンロードした運行情報をキャッシュとして保存することで、短時間に多数のAPIアクセスが発生するのを防ぎます。

Support APIs

Installation

このリポジトリを直接インストールします。

pip install git+https://github.com/friuli-jokyo/python-odpt-train-info

Example

ソースコードは/example.pyに記載。

>>> import odpttraininfo as odpt

# キャッシュの保存先を指定(デフォルトは"./__odptcache__/")
>>> odpt.config.set_cache_dir("./__odptcache__/")

# 公共交通オープンデータセンターのconsumerKeyをセット(.env等を用いて環境変数"ODPT_CENTER_TOKEN"を設定すればここでセットする必要はありません)
>>> odpt.Distributor.ODPT_CENTER.set_consumer_key("xxxxxxxxxxxx")

# キャッシュファイルを更新
>>> odpt.refresh_cache()

# キャッシュから運行情報を取得
# キャッシュが生成から80秒以上経っているときはインターネットリソースから取得
>>> info = odpt.fetch_info()
>>> print(info[0].to_json(indent=4))
{
    "@id": "urn:uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "@type": "odpt:TrainInformation",
    "dc:date": "0000-00-00T00:00:00+09:00",
    "@context": "http://vocab.odpt.org/context_odpt.jsonld",
    "dct:valid": "0000-00-00T00:00:00+09:00",
    "owl:sameAs": "odpt.TrainInformation:TWR.Rinkai",
    "odpt:railway": "odpt.Railway:TWR.Rinkai",
    "odpt:operator": "odpt.Operator:TWR",
    "odpt:trainInformationText": {
        "ja": "平常通り運転しています。"
    }
}
>>> print(info[0].train_information_text.ja)
平常通り運転しています>>> print(info[0].train_information_status)
None

# 時刻とUUIDはオブジェクトとして格納されます
>>> print(info[0].date.date())
000-00-00

License

MIT

About

ODPT形式で提供される鉄道運行情報を集約

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages