2011-03-22 120 views
3

我正在寻找一种方法来使用Google地图对地点进行地理编码。地理编码器API仅提供了使用地址进行地理编码的功能。但是,如果不知道地址,只知道餐厅的城市和名称呢?或者我想检索“Mc Donalds Berlin”或“Bar Berlin”的结果?地图Google地图地理编码器

我发现这个职位,他问的正是我需要的:Suggest list in google maps search input

And at his blog I found a solution

这工作得很好,其令人难以置信的快!我已经签出的源代码,看到他正在使用这个网址:

http://maps-api-ssl.google.com/maps/suggest?hl=en&gl=us&v=2&json=b&auth=4c8b041euWw4-3h2-Ty2fD3D1BKVQqJCEcU&src=1,2&num=5&numps=5&callback=handleResponse&q=........

顺便说一句,那就是maps.google.com使用得到他们的Ajax自动完成相同的URL。

我的问题,现在:

  • 是否允许使用这个网址为我自己的网站?
  • 我需要一个特殊的API密钥吗? (因为上面的URL中的auth = var)
  • 还是像付费服务那样?
  • 是否有其他方法可以解决问题?例如与谷歌的标准Geocoder API?

回答

1

你可能想看看到谷歌Places API的对场地:

Google Places API

另一种方法是通过YQL,但我不是100%确定它的准确度。转到YQL Console和尝试以下查询:

select * from local.search where query="outback steakhouse" and location="atlanta, ga" 

这将使你在美国佐治亚州亚特兰大澳拜客牛排的位置。您还可以查询resturants附近邮编:

select * from local.search where zip='30045' and query='restaurant' 

我肯定有办法来查询使用YQL围绕给定点场所。

+0

thx为您的答案。但你需要一个Adsense发布者ID来访问谷歌的地方。我没有一个,所以我试图注册AdSense服务。在公式中,他们需要我的全名,包括地址,电话等等。但我不想向谷歌提供这些信息(他们已经对我了解得太多;)有没有另外一种方法可以在没有注册AdSense的情况下测试谷歌地点? – 23tux 2011-03-22 18:09:02

+0

@ 23tux截至目前,您需要使用AdSense帐户。另一种方法是使用YQL – kjy112 2011-03-22 18:14:43

+0

@ 23tux我也相信你展示的例子只是使用谷歌实例来做谷歌地图的地理编码。它并没有真正找到该地区周围的场地。 – kjy112 2011-03-22 20:35:10