GoogleMapsAPIのジオコーディングがまた変わってる
2008年10月8日
例えば、こういうクエリを投げると
http://maps.google.co.jp/maps/geo?q=%E6%9D%B1%E4%BA%AC%E9%83%BD%E6%B8%8B%E8%B0%B7%E5%8C%BA%E6%B8%8B%E8%B0%B71-2-5&output=xml&key={$API-Key}
以下が返って来ます
<kml> <Response> <name>東京都渋谷区渋谷1-2-5</name> <Status> <code>200</code> <request>geocode</request> </Status> <Placemark id="p1"> <address>日本東京都渋谷区渋谷1丁目2</address> <AddressDetails Accuracy="7"> <Country> <CountryNameCode>JP</CountryNameCode> <CountryName>日本</CountryName> <AdministrativeArea> <AdministrativeAreaName>東京都</AdministrativeAreaName> <Locality> <LocalityName>渋谷区</LocalityName> <DependentLocality> <DependentLocalityName>渋谷</DependentLocalityName> <Thoroughfare> <ThoroughfareName>1丁目2</ThoroughfareName> </Thoroughfare> </DependentLocality> </Locality> </AdministrativeArea> </Country> </AddressDetails> <Point> <coordinates>139.706406,35.661491,0</coordinates> </Point> </Placemark> </Response> </kml>
昔と比べて、精度(Accuracy)は下がっているようですが
ちゃんとした結果を返すようになっていました。
とりあえず、良かったなぁということで。
ただ、返って来る情報が不安定なようなので、
常に使うサービスを予定している人は注意した方がいいと思います。
逆にAjax側のAPI方が返す情報は安定しているようなので、
いざという時のために、そっち側をAPI的に使えるようにしておくのも手かもしれないです。
精度はオプションで指定できるんじゃ?とか
そもそも、ニュースリリース読めばそんなこと書いてあるんじゃね?とか
後で時間が空いた時に覚えてたら調べます・・・・・・のつもりです・・・。
さっさと調べろよ使えねーなボケというせっかちさんのために、リンクを置いておきますね・・・。
マニュアル該当部分(英語)
マニュアル該当部分(英語)
【追記】
上記のリクエスト例は、
「東京都渋谷区渋谷1-2-5」をクエリで指定しているのですが
そのような住所が存在しないために変な結果が返っているというものでした・・・。
上記のリクエスト例は、
「東京都渋谷区渋谷1-2-5」をクエリで指定しているのですが
そのような住所が存在しないために変な結果が返っているというものでした・・・。
APIの仕様として、指定住所が存在しない場合は、
精度を落とした座標や類似の住所を勝手に判別して座標を返すようです。
ただし、実際に存在する住所を指定しても、
このような結果になる場合がありますが、
それはおそらくは、Google Maps側の住所情報の更新が間に合ってないということなので
諦めて情報の更新を待つしか無いっぽいです。
以上、教えてくれた方、ありがとうございました。