我可以从仅通过城市的 Google Geocoding API 获取地理编码信息吗?

Posted

技术标签:

【中文标题】我可以从仅通过城市的 Google Geocoding API 获取地理编码信息吗?【英文标题】:Can i get geocoding information from Google Geocoding API passing only the city? 【发布时间】:2011-10-02 23:08:39 【问题描述】:

我只需要获取给定城市的一些地理数据,我不感兴趣(而且我不知道)地址。发送这样的请求:

http://maps.googleapis.com/maps/api/geocode/xml?address=fake,%20USA&sensor=false

将匹配在美国某处带有 fake 字样的街道。 如果没有具有该名称的城市,我如何仅匹配城市并获得ZERO_RESULTS 响应?

【问题讨论】:

【参考方案1】:

很遗憾,您无法使用来自 docs page 的 Geocoding API 执行此操作:

地理编码是将地址(如“1600 Amphitheatre Parkway, Mountain View, CA”)转换为地理坐标(如纬度 37.423021 和经度 -122.083739)的过程

API 将始终查找特定地址,如果无法从您提供的字符串中找到完全匹配的地址,它将始终“尽最大努力”猜测您要尝试查找的内容。只有当它不能做出这个合理的猜测时,它才会返回ZERO_RESULTS

【讨论】:

【参考方案2】:

我也只是探索 API。如何使用如下链接

http://maps.googleapis.com/maps/api/geocode/xml?components=locality:fake|country:US

locality 等于 City 并将国家声明为 US。它将返回零结果。但是如果使用这个

http://maps.googleapis.com/maps/api/geocode/xml?components=locality:fake|country:Nigeria

这将返回结果。

【讨论】:

以上是关于我可以从仅通过城市的 Google Geocoding API 获取地理编码信息吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Google MAP API 通过 lat、lng 找到最近的城市

有没有办法限制 Google Places Autocomplete 搜索城市的街道?

从仅给定一个属性的 ArrayList 中删除对象

使用 Python 从仅具有基本名称的 tarfile 中提取文件

我可以使用 Google API 查找最近的城市吗?

如何在 Google Play 管理中心上传特定城市的应用程序?