2011-05-22

JAVASCRIPT | IP Addressから地域判定

忙しい。平日で片がつかずに土日で挽回する日々。

で、お題の件ですが、ユーザの都道府県を判定したいという希望。
で、調べた結果。
・IPアドレスから地域は(原則)分からない。
・ただし、ルータは特定できるので、ルータの位置情報のデータを別途持っていればルックアップできる。
・その位置情報のデータは地道な作業で作っていくもの。
・データと判定の仕組みは特許が絡んでいる模様。
のような結果になりました。
別途GooglのAPIもあるようです。

まずは確認くん(VIA the UGTOP)でIPアドレスを調べてから。

【地域判定ASP】(データベース方式以外のサービスもあります)
など。他多数。
有料サービスはこちら。日本は日本のサービスがベスト。
サイバーエリアリサーチ株式会社|製品・サービス
【参考サイト】
network/ISP/ISP別地域割り出し方法 - Tomocha WikiPlus



別のアプローチ方法として、Googleにあった方法。
新しいブラウザは、W3C Geolocation 規格(リンク先は英語)に対応するようになってきています。この規格は HTML5 の一部で、今後の業界標準となる可能性が高いものです。Geolocation を実行するすべてのアプリケーションは、この規格をサポートしている必要があります。
Google Gears を搭載した一部のブラウザでは Google Gears Geolocation API を使用できます。
W3C 規格のサポートの普及はまだ将来的なものであるため、Gears を確認することがフォールバック システムとして適しています。
一部のブラウザは IP アドレスを使用してユーザーの現在地を検出しますが、その精度は非常におおまかなものです。
Google Maps JavaScript API V3 - 基本 - Google Maps JavaScript API V3 - Google Code

緯度経度が判定できるようです。ほら↓
Google Maps JavaScript API v3 Example: Map Geolocation
じゃあ、緯度経度から都道府県を判別できるのかな?

もうちょっとGoogleをうろついていると、逆ジオコーディングという方法があるようです。
Google Geocoding API - Google Maps API Web サービス - Google Code

大阪の緯度、経度を入れてみた!

あな恐ろしや。administrative_area_level_1をとれば都道府県が分かる。

[to latest post]