こんにちは、緯度/経度の値に基づいて位置を逆にジオコードすることができます。しかし、私の問題は、国と都市名だけが必要で、他には何もないことです。
Google から提供された json データが、利用可能なデータに基づいて変化し続けることがあります。地域文字列がある場合もありますが、一部の緯度/経度には地域情報がありません。すべての可能なjson文字列から都市と国を抽出できる経験則またはラッパークラスはありますか?
たとえばhttp://maps.google.com/maps/geo?q=24.487148563173424,-78.046875&output=jsonが私に与えます
{
"name": "24.487148563173424,-78.046875",
"Status": {
"code": 200,
"request": "geocode"
},
"Placemark": [ {
"id": "p1",
"address": "Central Andros, The Bahamas",
"AddressDetails": {
"Accuracy" : 3,
"Country" : {
"CountryName" : "The Bahamas",
"CountryNameCode" : "BS",
"SubAdministrativeArea" : {
"SubAdministrativeAreaName" : "Central Andros"
}
}
},
"ExtendedData": {
"LatLonBox": {
"north": 24.6312368,
"south": 24.3062499,
"east": -77.7177462,
"west": -78.2299838
}
},
"Point": {
"coordinates": [ -77.9738650, 24.4688482, 0 ]
}
} ]
}
どこでhttp://maps.google.com/maps/geo?q=47.33882269482199,-100.634765625&output=jsonが私に与える
{
"name": "47.33882269482199, -100.634765625",
"Status": {
"code": 200,
"request": "geocode"
},
"Placemark": [ {
"id": "p1",
"address": "11445 471st Ave NE, McClusky, ND 58463, USA",
"AddressDetails": {
"Accuracy" : 8,
"Country" : {
"AdministrativeArea" : {
"AdministrativeAreaName" : "ND",
"SubAdministrativeArea" : {
"Locality" : {
"LocalityName" : "McClusky",
"PostalCode" : {
"PostalCodeNumber" : "58463"
},
"Thoroughfare" : {
"ThoroughfareName" : "11445 471st Ave NE"
}
},
"SubAdministrativeAreaName" : "Sheridan"
}
},
"CountryName" : "USA",
"CountryNameCode" : "US"
}
},
"ExtendedData": {
"LatLonBox": {
"north": 47.3307737,
"south": 47.3244785,
"east": -100.6025856,
"west": -100.6089256
}
},
"Point": {
"coordinates": [ -100.6089257, 47.3276298, 0 ]
}
} ]
}
都市名と国名を取得できる標準的な手順はありますか? そうです、私はjsonをトラバースして、gogoleが私に投げかけているさまざまなフォーマットを処理しようとしています。
ありがとう