Google Maps API-获取地址坐标


150

我想将地址转换成long / lat。

有没有不使用JavaScript的方法?因为就我而言,由于转换是在后台进行,因此无需显示任何内容。

Answers:


273

您正在寻找的是地理编码

Google提供了地理编码Web服务,该服务应该可以满足您的需求。您将能够在服务器上进行地理编码。

JSON示例:

http://maps.google.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA

XML示例:

http://maps.google.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA


编辑:

请注意,这是现在不建议使用的方法,您必须提供自己的Google API密钥才能访问此数据。


@ n00b:我最初误读了您的问题。您在寻找地理编码,而不是反向地理编码。不过,您仍然可以使用Google Web Services API来实现。
丹尼尔·瓦萨洛

1
链接显示sensor不再需要该参数。
osa

确定它的工作,但现在我想只有美国国家搜索地址,但它让我在世界各地搜索数据回归ü可以给我一个特定国家的解决方案
帕雷什Hirpara

@PareshHirpara您是否不必United+States在address参数中插入?;-)
Please_Dont_Bully_Me_SO_Lords

11

Althugh,您要求提供Google Maps API,我建议使用Open street maps提供的开源,有效,合法,免费众包的 API

https://nominatim.openstreetmap.org/search?q=Mumbai&format=json

这是API文档供参考。

编辑:与Google Maps API相比,至少在邮政编码方面似乎偶尔会有差异,后者似乎更准确。使用加拿大邮政搜索服务验证加拿大的地址时就是这种情况,但是其他国家也可能如此。


首先-谢谢您也建议使用此选项。:)就我而言,我正在根据街道编号,街道名称,城市和省份(在加拿大)寻找地址的邮政编码。但是,事实证明,Google Maps API和Open Street Maps API返回的内容存在差异。例如,对于地址为ON的多伦多市Toronto Street 20,他们返回了不同的邮政编码,而Google Maps API返回的邮政编码与加拿大邮政网站上的搜索返回的邮政编码相同。我也用其他两个地址进行了测试,再次出现差异。
Nikolay D

@NikolayD似乎众包数据中存在错误。然后使用Google地图!建议您输入作为编辑我的答案,请
Zameer

1
@Dantalian地址号码的定义是什么?
Zameer

抱歉,我的意思是街道号码
Dantalian


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.