[MaaStep]建物名から緯度経度を取得
2019-07-05
azblob://2022/11/11/eyecatch/2019-07-05-maastep-geocoding-by-location-name-000.jpg

はじめに

前回はBing Mapを用いてGeocodingして緯度経度を取得しました。 その際に建物名を住所に変換するAPIなどを探したいと言っていたのですが、平川君がいい感じのものを見つけてくれたので、その紹介と佐藤が失敗した例について紹介します。
平川君ありがとう。

Bing Map Locations API

前回、住所での検索を行ったAPIです。
前回はここを参考に住所で緯度経度を取得しました。
今回はこのページを参考に建物名などから緯度経度の取得を試みます。
実施するにはBing Maps Keyが必要です(取得方法は前回を参照)。
クエリは以下のように投げます。

http://dev.virtualearth.net/REST/v1/Locations?query=<建物名>&c=ja-jp&o=xml&key=<取得したBing Map Key>

今回も同様に東京タワーの緯度経度を以下のURLで求めます。

http://dev.virtualearth.net/REST/v1/Locations?query=%E6%9D%B1%E4%BA%AC%E3%82%BF%E3%83%AF%E3%83%BC&c=ja-jp&o=xml&key=<取得したBing Map Key>

すると以下のように緯度経度を含むレスポンスが返ってきました。

東京タワーの緯度経度取得画面

他の建物名をいくつか試した結果についても紹介します。

  • 浜松町駅 → 成功
  • 鹿苑寺 → 失敗(島根県出雲市鹿園寺町)。意図した場所は京都の金閣寺
  • シーバンスS館 → 失敗(バンス[フランスの地域])。意図した場所は港区のシーバンスS館。
  • 豊洲市場 → △(豊洲駅)。意図した場所は豊洲市場だったが、その最寄り駅が表示された。

失敗した例

Bing MapにはLocal Searchというサービスもあります。
こちらはYahoo!ローカルサーチAPIと同様に地域の事業者や地域・拠点情報(POI)を検索できるサービスです。
こちらのページではシアトルのコーヒーショップを検索するなどができると記載されていました。
そのほかにも実際にクエリに「シアトル大学」と入力して、緯度経度を取得することが確認できたのですが、日本で検索すると以下のように検索結果が0となってしまいました(以下は東京タワーで検索した例)。

https://dev.virtualearth.net/REST/v1/LocalSearch/?query=%E6%9D%B1%E4%BA%AC%E3%82%BF%E3%83%AF%E3%83%BC&o=xml&key=<取得したBing Map Key>
「東京タワー」の検索結果

Local Searchの対象地域の記載されているページは今回見つからなかったのですが、日本はどうやらまだ対象外のようです。

おわりに

今回は建物名から緯度経度を取得することができました。
ただし、駅名や東京タワーなどは意図した緯度経度が出ますが、マイナーな建物名や有名な場所でも意図した緯度経度が出ないことがあることがわかりました。