确定字符串是否是有效的地理位置

Wog*_*gan 4 php api maps google-maps geolocation

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

是否有某种库/服务/ api /方法可用于确定给定字符串是否代表有效的地理位置?在考虑拼写错误,订购错误等方面?

mop*_*oke 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"
Run Code Online (Sandbox Code Playgroud)

  • 请注意,根据您的用户群大小,Google地理编码API可能不是最佳选择,因为它每天的请求限制.MapQuest的API虽然不如谷歌,但没有任何限制. (4认同)