【问题标题】:Google Places API - RadarSearch results are confusingGoogle Places API - RadarSearch 结果令人困惑
【发布时间】:2014-08-29 14:41:14
【问题描述】:

我正在对 Google Places RadarSearch API 进行查询,但并不完全理解结果。我正在寻找附近的乐购超市。我的查询结构如下:

https://maps.googleapis.com/maps/api/place/radarsearch/xml?location=51.503186,-0.126446&types=store&keyword=tesco&name=tesco&radius=5000&key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

我尝试了一系列字段类型、关键字和名称的变体。结果都不是乐购商店。我错过了什么吗?

Google 文档将这些字段显示为:

关键字 - 与 Google 已为此地点编制索引的所有内容匹配的术语,包括但不限于名称、类型和地址,以及客户评论和其他第三方内容。 em>

name — 与地名匹配的一个或多个术语,由空格字符分隔。结果将仅限于包含传递的名称值的结果。请注意,除了列出的名称之外,一个地点可能还有与其相关的其他名称。 API 将尝试将传递的名称值与所有这些名称进行匹配。因此,可能会在结果中返回列出名称与搜索词不匹配但关联名称匹配的地点。

我总是得到最多 200 个结果,其中可能包括 1 个或 2 个 Tescos。当我查看谷歌地图时,我正在搜索的半径内有 10 个乐购。就好像 api 忽略了 name 字段。我在名称字段中填充什么并不重要,我仍然得到相同的结果

更新:似乎这是一个已知的错误https://code.google.com/p/gmaps-api-issues/issues/detail?id=7082

【问题讨论】:

    标签: api google-places-api


    【解决方案1】:

    也许我错了,但我认为这是一个商业问题,谷歌会显示所有企业使用特定标准过滤它们,它们没有发布规则,例如在您的搜索中,您使用的类型是“商店”,所以他们将所有商店都返回给您,并以他们自己的方式使用名称或关键字,他们知道他们内部使用的标准,还有其他内容,在 API 描述中,他们为雷达搜索提供的示例显示了名称结果中的位置,但是在我正在做的测试中,他们甚至没有发送名称,因此您无法迭代这些结果并自行过滤,为了获得名称,您必须做另一个调用方式:

    https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJq4lX1doEdkgR5JXPstgQjc0&key=YOUR_KEY
    

    也许还有其他方法,但我没看到。

    【讨论】:

      【解决方案2】:

      我发现雷达搜索今天返回了奇怪的结果。几天前它的工作方式有所不同。

      keyword-parameter 目前没有任何效果,我已经破坏了之前工作的集成测试。我希望这是一个暂时的问题。

      我为此提交了错误报告:https://code.google.com/p/gmaps-api-issues/issues/detail?id=7086

      【讨论】:

      • 现在它又可以工作了,谷歌似乎已经解决了这个问题。所有测试都再次运行。酷!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多