🚋

駅すぱあと Python SDKを使って駅情報を取得する

2025/03/03に公開

本記事はヴァル研究所の支援として作成された記事です

駅すぱあとはAPIを公開しており、駅情報や経路探索などをAPI経由で行えます。メソッドはすべてGETメソッドで、情報取得系のみです。レスポンスはJSONまたはXMLで返ってきます。

この駅すぱあと APIを利用しやすくするSDKを開発しはじめました。SDKはPythonで作っており、ローカルやサーバーサイドで実行できます。

今回は、駅情報取得APIの使い方を解説します。

なお、駅すぱあと APIを使ってExcel VBAでもSDKを作っています。
「駅すぱあと API」をExcel VBAから利用して、経費精算用に経路探索を行う
駅すぱあと VBA SDKを使って駅情報を取得する

必要な情報

SDKを利用する際にはAPIキーが必要です。無料トライアルがあるので、こちらから取得してください。

注意点

  • SDKは非公式です。公式サポートへの問い合わせはご遠慮ください

インストール

インストールは pip コマンドを利用してください。

pip install ekispert

初期化

先ほど取得したAPIキーを使ってSDKを初期化します。

from ekispert.client import Ekispert

client = Ekispert('YOUR_API_KEY')

駅の情報の検索条件の設定

駅の情報の検索には StationLightQuery を使います。このオブジェクトを取得し、検索条件を設定します。

query = client.stationQuery()
query.name = '東京'
# 都道府県を指定する場合(複数可)
query.prefectureCodes = [13]
# 交通種別を指定する場合(複数可)
query.types = ['bus']

検索条件は 駅簡易情報 - 駅すぱあと API Documents 駅データ・経路検索のWebAPI にあるものを指定できます。

検索の実行

検索条件を設定したら、検索処理を実行します。結果は Point クラスの配列になります。検索がうまくいったかどうかは、 try-except で判定します。

try:
    points = query.find()
except Exception as e:
    print(e)

成功した場合

処理が成功した場合、 points の中にポイント情報が入っています。各ポイントには station (駅情報) と prefecture (都道府県) プロパティなどがあります。

print(points[0].station.code) # 22828
print(points[0].prefecture.name) # 東京都

ソースコード

SDKのコードは以下のリポジトリにて公開しています。ライセンスはMIT Licenseです。

EkispertAPIMania/python-sdk

また、パッケージは以下にて公開しています。

ekispert · PyPI

まとめ

駅情報の取得は、経路探索の基本になります。まだ経路探索はできませんが、これから徐々に機能を追加していきます。ぜひお試しください。

何か不具合があれば、Issueにて連絡いただければ対応します。

EkispertAPIMania/python-sdk

Discussion