2

地図上にいくつかのマーカーがあり、ユーザーがそれらをクリックすると、Google ジオコーダーを使用して住所情報を取得します。問題は、Google がこのデータを返す形式です。などの一貫した形式で住所を表示したい

  • バンクーバー、ブリティッシュ コロンビア州、カナダ
  • シアトル、ワシントン州、アメリカ合衆国
  • シドニー、ニューサウスウェールズ州、オーストラリア

このデータを解析する簡単な方法を知っている人はいますか?

{"city":"Vancouver", "region":"British Columbia", "country":"Canada"}

ありがとう。

4

1 に答える 1

4

ああ、政治地理がこんなに単純だと思っていた時代は、もっと甘美な時代だった。Google がこのようなデータを返すことができれば、きっとそうするでしょう。代わりに、地域、サブ地域、administrative_area_level_*、country などの混乱が生じます。

これを説明するために、次のことを考慮してください。

http://maps.googleapis.com/maps/api/geocode/json?address=11215&sensor=false

http://maps.googleapis.com/maps/api/geocode/json?address=10010&sensor=false

マンハッタンでは、体調は万全です。自治区 (マンハッタン)、都市 (ニューヨーク)、郡 (ニューヨーク)、および州 (ニューヨーク) を取得します。ブルックリンにとって、物事はそれほどきれいではありません。行政区 (ブルックリン)、郡 (キングス)、および州 (ニューヨーク) を取得します。

ロングアイランドに少し足を踏み入れると、もっと楽しくなります。

http://maps.googleapis.com/maps/api/geocode/json?address=40.723464,%20-73.716282&sensor=false

この場合、村 (フローラル パーク)、町 (ヘンプステッド)、郡 (ナッソー)、州 (ニューヨーク) が得られますが、すべてがごちゃごちゃしています。

これは、1 つの州の 20 マイル以内の変動です。そこから抜け出せば、頼れるものはさらに少なくなります。英国では、私たちがロンドンとして見たいと思っているもののほとんどは、大ロンドンのいくつかの小さな自治区になります.

Google は、このバリエーションに対処するための深く豊富な分類法を提供していますが、それを理解するには独自のルールを適用する必要があります (多くの場合、州ごと、国ごとのレベルで)。

于 2010-12-12T02:05:34.213 に答える