0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

駅すぱあと GAS SDKを使って駅簡易情報を取得する

Posted at

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

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

この駅すぱあと APIを利用しやすくするSDKを開発しはじめました。SDKはGAS(Google Apps Script)で作っており、GoogleドキュメントやGoogleスプレッドシートで利用できます。

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

なお、同様の操作はVBA SDKやPython SDKでも利用できます。

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

必要な情報

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

注意点

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

インストール

インストールは ライブラリID を指定して行います。

1lJW_-jvxWQbOHq-TUe1Dab3picc8nx5gZHb8vvxSqe43HkP9hNMjF-d8

デフォルトでは Ekispert がIDです。以下はそれに沿って記述します。

初期化

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

const client = new Ekispert.Client('YOUR_API_KEY');

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

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

const query = client.stationLightQuery()
query.name = '東京'
// 都道府県
query.prefectureCodes = [13, 14]
query.types = ['bus']
query.communityBus = 'except'

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

検索の実行

検索条件を設定したら、検索処理を実行します。結果は Point クラスの配列になります。

const points = query.execute();

エラーだった場合

エラーは例外処理で取得できます。

try {
  const points = query.execute();
} catch (e) {
  console.log(e.code);
  console.log(e.message);
}

成功した場合

処理が成功した場合、 station (駅情報) と prefecture (都道府県) プロパティなどが入っています。

console.log(points[0].station.name); // '東京'
console.log(points[0].prefecture.name); // '東京都'
console.log(points[0].prefecture.code); // 13

ソースコード

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

EkispertAPIMania/gas-sdk

まとめ

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

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

EkispertAPIMania/gas-sdk

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?