将城市区域名称转换为纬度和经度

7

我有一个城市的区域名称列表,需要它们的经纬度。

有没有可以获取这些数据的服务?

我不想使用地图,我想通过简单的API调用并通过json或xml获取经纬度。

2个回答

18

虽然这个问题已经得到回答,但我想补充一点:谷歌并不是唯一提供地理编码支持的服务,下面列出了几个主要的提供者:

可用于地址/邮政编码到 (纬度、经度) 映射的解决方案...

Google API, http://code.google.com/apis/maps/documentation/geocoding/ ) 由于谷歌的名字而变得最受欢迎。 在互联网上有广泛的支持(开发时间更短)。 遗憾的是,非商业用途免费版本不可用。 免费版本每天只能查询2500次。(http://code.google.com/apis/maps/documentation/geocoding/) “使用条款”中有一项规定,结果必须显示在谷歌地图上,参见http://code.google.com/apis/maps/documentation/geocoding/#GeocodingRequests 这里列出了相关条款和条件。 http://code.google.com/apis/maps/terms.html#section_10_12

Nominatium,(http://wiki.openstreetmap.org/wiki/Nominatim ) 一个提供地址到(纬度、经度)映射的开源软件解决方案的不太常见的组织。 也可以用于商业项目。 没有每日查询次数的限制,也没有“使用条款”中的隐藏条款。 由于该组织本身并不太受欢迎,因此提供的支持非常少。

Yahoo APIhttp://developer.yahoo.com/geo/placefinder/ 另一个类似谷歌的流行 API ,但更加普遍。 支持每天最多50000个请求。 与谷歌一样,有广泛的支持。

雅虎鼓励我们使用“powered by yahoo logo”,但不强制要求。(http://info.yahoo.com/legal/us/yahoo/api/api-2140.html) 可以用于非商业用途(我已经阅读了雅虎条款,并没有发现任何限制我们这样做的条款,参考http://info.yahoo.com/legal/us/yahoo/maps/mapsapi/mapsapi-2141.html)。 YQL(Yahoo查询语言见:http://developer.yahoo.com/yql/) 一种基于SQL的查询语言,用于查询雅虎网络服务。例如,如果我们有一个邮政编码“382025”,我们可以编写一个YQL查询,如 [ select centroid from geo.places where text="Enter some pin code here"]。 雅虎鼓励我们在商业应用程序中使用YQL。(http://developer.yahoo.com/yql/faq/) 相对于其他选项,允许的查询数量最多。(参见http://developer.yahoo.com/yql/faq/)。 支持吗?

1
@HarshaMV 如果您喜欢这个答案,可以点赞或接受它作为您的答案...... - Amit
Google API 受欢迎的原因是当我们在 Google 中搜索解决方案时,显然它会首先给出自己的 API... 哈哈 - Amit

16

需要我使用谷歌地图。有没有一种服务,我只需使用其API中的一个查询即可完成? - Harsha M V
2
@Harsha 定义 query,定义 api 和定义 service,因为你正在使用他们的 REST 或 JS api 查询 Google 地理编码 service - Strelok
类似于 Http://website.com/api?place=Bangalore 这样的东西,我不确定它叫什么:D - Harsha M V
1
这是REST,不需要JS...请阅读我提供的Google文档,非常简单... - Mike Gleason jr Couturier
1
@Harsha 你在开玩笑吗?你有 打开 Mike 给你提供的“REST格式”链接吗?http://maps.googleapis.com/maps/api/geocode/json?address=Bangalore&sensor=false - Strelok
2
抱歉:D我在某个地方读到,使用谷歌地图需要有地图才能发起调用。非常感谢。我有点懒得去仔细阅读了。 - Harsha M V

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接