【问题标题】:Google Maps geocoder for venues用于场地的谷歌地图地理编码器
【发布时间】:2011-03-22 09:40:09
【问题描述】:

我正在寻找一种使用谷歌地图对场地进行地理编码的方法。 Geocoder API 仅提供使用地址进行地理编码的能力。但是,如果不知道地址,只知道城市和餐厅名称怎么办?或者我想检索“Mc Donalds Berlin”或“Bar Berlin”的结果?

我找到了这篇文章,他确切地问我需要什么:Suggest list in google maps search input

And at his blog I found a solution

这非常有效,而且速度惊人!我查看了源代码,发现他正在使用这个 URL:

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)
  • 还是像付费服务一样?
  • 还有其他方法可以解决问题吗?例如使用来自 google 的标准 Geocoder API?

【问题讨论】:

    标签: javascript html google-maps geocoding yql


    【解决方案1】:

    您可能想查看 Google Places API for Venues:

    Google Places API

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

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

    这将为您提供乔治亚州亚特兰大 Outback 牛排馆的位置。您还可以查询邮政编码附近的餐厅:

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

    我确信有一些方法可以使用 YQL 查询给定点周围的场地。

    【讨论】:

    • 感谢您的回答。但是您需要一个 Adsense 发布者 ID 才能访问 Google 地方。我没有,所以我尝试注册 adsense 服务。在公式中他们需要我的全名,包括地址、电话等。但我不想向 google 提供这些信息(他们已经对我了解太多了;)还有其他方法可以让我在不注册 adsense 的情况下测试 google 地方吗?
    • @23tux 现在您需要 Adsense 帐户。另一种方法是使用 YQL
    • @23tux 我也相信你展示的例子只是使用谷歌实例来做谷歌地图的地理编码。它并没有真正找到该地区周围的场地。
    • 你的意思是雅虎查询语言吗?有没有对地址和地点进行地理编码的方法?我已经问过上面例子的作者。他说,他使用了与谷歌地图本身相同的api,并询问了谷歌的一些开发人员。他们说这不是非法的,但 API 没有记录,并且可以在没有任何通知的情况下更改。另一个问题是,他不确定当您使用此 API 进行多次调用的生产时,谷歌会如何反应。也许他们可以阻止您的应用程序。另一个问题:“使用谷歌实例做谷歌地图地理编码”是什么意思?谢谢!
    • @23tux 您在上面给出的示例使用地理编码,没有特定于场地。它只是根据与谷歌即时配对的地址猜测工作(不是我的坏事)。 Google Place API 仍处于测试版 AFAIK。在 YQL 上查看查询结果。谷歌地图也是如此,如果您提出太多请求,他们可能会阻止您的应用查询他们的数据库,但您可以每年支付许可提要以将其删除。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多