2010-02-02 59 views
4

我有一堆“地点” - 有些是准确的(gaborone,博茨瓦纳),有些是地理编码(40.75,-73.997),有些完全没用(#siliconcape) 。我需要找到一种方法来遍历列表,并确定每个字符串和地理编码的城市和国家,并返回无效位置的空值。确定一个字符串是否是一个有效的地理位置

是否有某种库/服务/ API /方法可用于确定给定的字符串是否代表有效的地理位置?在解释错字,排序错误等?

回答

9

可能最简单的方法是使用类似Google Geocoding API的东西。它需要一个字符串并尝试将其解析到一个位置。你可以得到输出为XML,JSON,CSV。

下面是一些例子CSV输出:

input : gaborone, botswana 
output: 200,4,-24.6541100,25.9087390 

input : #siliconcape 
output: 602,0,0,0 

input : 40.75,-73.997 
output: 200,8,"324 W 30th St, New York, NY 10001, USA" 
+0

哈哈,良好的时机,哈哈 - 只是发现我自己,加上示例代码:) – Wogan 2010-02-02 00:35:11

+4

请注意,根据您的用户群的大小,Google地理编码API可能不是最佳选择由于每天的请求限制。 MapQuest的API虽然低于Google,但没有任何限制。 – 2010-02-02 00:54:33

+0

“在24小时内15,000个地理编码请求”< - 由于我只有10'500个项目需要进行地理编码,因此Google会完美地工作:) – Wogan 2010-02-02 05:05:32

相关问题