OSM データから POI データを抽出する
OSM データの読みだしには Overpass API というのがあり、それを介してデータを取得することができる。
手取り早くこれを試すには GUI で Overpass API を試せるサイトがあるので、これを使ってみる↓
この左側に以下のクエリを書く。
この例では "public_transport"="station" として、駅データを抽出しているが、条件を変更することで、いろいろなデータを抽出できるはずだ。 OSM の参考リンク
[out:json]; area["name"~"日本"]; node(area)["public_transport"="station"]; out body;
で「実行」ボタンを押すと、以下のように駅一覧が地図上にマークされる。
さらにこの結果を JSON で欲しければ、
メニューを「エクスポート」→「クエリ」と進んでいき
「OverpassQL (コンパクト) へ変換」をクリックする。
すると API にクエリがくっついた形のリンクがあるので、これを使用する。 たとえば、今回の場合だと
になり、駅一覧の JSON データが得られる。
プログラムやバッチ的にやりたい時は