从商家名称获取完整地址 -- Google 地图 API

3
我一直在尝试使用Google Maps API,到目前为止它非常棒,但我遇到了第一个问题。我需要一种方法来获取城市和州中商家名称的完整地址。例如,在Google地图(maps.google.com)中搜索“The Troubadour,West Hollywood CA”会给我完整的地址:9081 Santa Monica Boulevard - West Hollywood,CA 90069。然而,问题是我找不到通过API实现这个功能的方法。我在网上和类似的SO问题上查找过,但我找不到任何可以回答我的问题的内容。我可以成功地使用地理编码获取纬度/经度,但我需要一种根据商家名称获取确切地址的方法。这可能吗? 提前感谢您的任何建议!

我问了一个类似的问题 - 你找到解决方案了吗?下面的答案似乎不起作用。http://stackoverflow.com/q/34550057/1840471 - Max Ghenis
1个回答

3
Google Geocoding API 的输出不是返回完整地址吗?
根据 Google:
地理编码是将地址(如“1600 Amphitheatre Parkway, Mountain View, CA”)转换为地理坐标(如纬度37.423021和经度-122.083739)的过程,您可以使用它们来放置标记或定位地图。 Google 地理编码 API 提供了一种通过 HTTP 请求直接访问地理编码器的方法。此外,该服务允许您执行相反的操作(将坐标转换为地址);这个过程称为“反向地理编码”。
重点在于我。
XML 响应似乎确实如此。
  <formatted_address>1600 Amphitheatre Pkwy, 
        Mountain View, CA 94043, USA</formatted_address> 
  <address_component> 
    <long_name>1600</long_name> 
    <short_name>1600</short_name> 
    <type>street_number</type> 
  </address_component> 
  <address_component> 
    <long_name>Amphitheatre Pkwy</long_name> 
    <short_name>Amphitheatre Pkwy</short_name> 
    <type>route</type> 
  </address_component> 
  <address_component> 
    <long_name>Mountain View</long_name> 
    <short_name>Mountain View</short_name> 
    <type>locality</type> 
    <type>political</type> 
  </address_component>
  ... 

如果不行的话,您可以尝试使用Google Directions API。XML输出的一部分以及JSON输出包括地址信息。以下是Google示例XML输出的一部分。
<start_address>Oklahoma City, OK, USA</start_address> 
<end_address>Los Angeles, CA, USA</end_address> 

我不知道你是否需要编写一个地址,或者是否可以计算出起点和终点相同的路线。


1
提供的两个链接现在已经失效。当前的Maps API HTTP结果对于OP的示例失败:http://maps.google.com/maps/api/geocode/json?address=The%20Troubadour,%20West%20Hollywood%20CA 只显示了West Hollywood,而没有地址。 - Max Ghenis
1
根据地理编码API文档:应避免使用其他地址元素,如商业名称和单元、套房或楼层号码。 - gdvalderrama

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