OpenStreetMapでジオコーディング

Javascript

OpenStreetMapでジオコーディング

Google Map APIを利用せずにOpenStreetMapでジオコーディング する方法を調査中です。
とりあえず調査の経過を書いておきます。

OpenStreetMapでジオコーディング を利用しようとすると、Nominatimと言うツールがあげられます。

Nominatim解説サイト
http://wiki.openstreetmap.org/wiki/JA:Nominatim

しかし、残念ながらNominatimは日本語のジオコーディングはまだまだのようです。(この記事を書いている、2014年4月3日現在)

弊社の住所は

 神奈川県横浜市神奈川区鶴屋町2-21-1 ダイヤビル5F

ですが、

たとえば横浜市神奈川区までは成功します。
http://nominatim.openstreetmap.org/search/%E7%A5%9E%E5%A5%88%E5%B7%9D%E5%8C%BA%20%E6%A8%AA%E6%B5%9C%E5%B8%82?format=xml&polygon=0&addressdetails=1

xmlで帰ってくる結果です。

しかし、鶴屋町まで入れると結果は帰ってきません。
http://nominatim.openstreetmap.org/search/%E9%B6%B4%E5%B1%8B%E7%94%BA%20%E7%A5%9E%E5%A5%88%E5%B7%9D%E5%8C%BA%20%E6%A8%AA%E6%B5%9C%E5%B8%82?format=xml&polygon=0&addressdetails=1

上の問い合わせのxmlで帰ってくる結果です。

ふぇぇ…

東京や熊本市などの住所で調べてみても、まだまだ市区レベルでしか結果が帰ってこないようです。

リバースジオコーディング

Nominatimはリバースジオコーディングの方はもう少しイケています。

下記はみなとみらいの緯度経度ですが

http://nominatim.openstreetmap.org/reverse?format=xml&lat=35.45797&lon=139.632314&zoom=18&addressdetails=1

上の問い合わせのxmlで帰ってくる結果です。

リバースジオコーディングできています。

弊社の住所の緯度経度ですが
http://nominatim.openstreetmap.org/reverse?format=xml&lat=35.4693&lon=139.624557&zoom=18&addressdetails=1

上の問い合わせのxmlで帰ってくる結果です。

ま、こんなもんか。

ところでmapquestでもNominatimを利用してジオコーディングできるらしいというのでやってみたかったのですが、Get Mapquest App KeyというボタンをクリックしてもLoadingがひたすらグルグル回るだけで、登録できません。残念。

https://developer.mapquest.com/web/products/open/geocoding-service

WebAPIを利用しなくっても、ジオコーディングのデータをサーバーにストックしておいて、それを自前で検索する…というのもできそうです。

Planet.osm
http://wiki.openstreetmap.org/wiki/Planet.osm

しかし、ヨーロッパやアメリカ・カナダが主流なのか?
日本のデータは?

というと、なんと日本のジオコーディングのデータを国土交通省が配布してくれています。

位置参照情報ダウンロードサービス
http://nlftp.mlit.go.jp/isj/

いい国だな、ニッポン!⊂(^-^)⊃

これをサーバーにダウンロードして、ジオコーディングを自前で作ることができますね!

下記のサイト様を大変参考にさせて頂きました。m(_ _)m

各種ジオコーディングapiの罠と対処法
http://treeapps.hatenablog.com/entry/2012/11/17/%E5%90%84%E7%A8%AE%E3%82%B8%E3%82%AA%E3%82%B3%E3%83%BC%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0api%E3%81%AE%E7%BD%A0%E3%81%A8%E5%AF%BE%E5%87%A6%E6%B3%95

しかし、差分のメンテナンスとか考えると、やっぱりどっかオープンソースのWeb APIで、パラメーターをURLで投げるとxmlかjsonで帰ってくる方が楽ですよね(^_^;

Nominatimでぜひ日本のデータを取れるようになる日が一日も早く来るように願っています!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です