我可以从仅通过城市的 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 搜索城市的街道?