2012-02-16 135 views

回答

10

一種方法是使用Google Maps API(儘管它可能是矯枉過正)。例如,假設有人將他們的國家列爲「雅加達」(實際上是印度尼西亞的一個城市)。然後,你將提交下列地圖API請求:

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

它返回一個JSON對象。然後,使用您最喜歡的JSON解析器解析該解析器,然後提取「地址組件」字段的「long_name」字段,並鍵入「country」。在這種情況下,即「印度尼西亞」。

+0

非常感謝克里斯。 – 2012-02-16 08:02:50

+0

我知道了.. :) :) :) :) :) – 2012-02-16 08:03:38

+3

也許這是說明顯而易見的,但是您應該保留一個公認的國家/地區名稱(和常見拼寫錯誤)的列表,以便您只在您執行Maps API請求時還沒有認識到這個國家。 – 2012-02-16 08:04:58

4

您可以使用Google地圖的自動填充腳本獲取城市的可能國家/地區。它的工作原理是這樣的:當你鍵入「紐約」時,它建議你「紐約,美國」。但請記住,你不能總是從城市名稱中得到國名:德國和康涅狄格州都有柏林。

+1

+1,ESP。在德國和康涅狄格州的柏林。 – Ghost 2012-02-16 07:52:30

+1

感謝您的回覆。 – 2012-02-16 08:02:28

5

嘗試使用方便的許可證(例如GeoWorldMap from here)查找資源文件或數據庫。無論如何,你無法從Twitter用戶那裏獲得準確的信息,他們在他們的個人資料中寫的內容可能是錯誤的。所以我會使用靜態資源並儘可能多地解碼。

+1

感謝您的回覆。:) – 2012-02-16 08:04:12

相關問題