【问题标题】:Google autocomplete filtered by business type按业务类型过滤的 Google 自动填充功能
【发布时间】:2013-04-25 14:22:23
【问题描述】:

我正在尝试使用 Google Maps API 通过键入您要查找的栏来自动完成以查找附近的酒吧。这似乎不属于 API 的用户故事。我无法弄清楚我需要使用哪些技巧组合来完成此操作。

  1. 自动完成功能没有足够细化的地点类型(场所、地理编码)来仅过滤酒吧,因此我的预测充满了加油站、律师事务所和墓地。

  2. 附近搜索的粒度足以过滤 type=bar,但不能用作自动完成,因为名称和关键字参数完全匹配。所以当我搜索“craw”时,我得到的是 ZERO_RESULTS 而不是“Crawdaddy's”。

  3. 接下来我想我会得到预测,应用 type=bar 过滤器对同一位置进行雷达搜索,我只会根据参考号获取雷达结果中的预测。 NO GO,要么雷达搜索使用的参考编号与自动完成不同,要么没有将最近的 type=bay 返回到我的位置。

所以最终,我要问的是我在这里是在做傻事,还是有办法实现按业务类型过滤的自动完成功能?

谢谢, 塔尔

【问题讨论】:

    标签: google-maps google-places-api


    【解决方案1】:

    很抱歉成为坏消息的承担者。我将介绍您的三个可能的想法:

    • 自动完成将匹配关键字。律师通常称自己为大律师,所以你有通配符把你搞砸了。 不过,有一个可选的 types 参数可以让您在其中按类型进行过滤,如果有帮助的话。

    • 我实际上在这个上得到了相反的结果。使用以下参数:

    query=etoi
    types=bar
    location=50,2
    sensor=true
    radius=20000
    

    作为第一个结果的收益率:

    { “几何学” : { “地点” : { “纬度”:50.1089160, “液化天然气”:1.831840 } }, "图标" : "http://maps.gstatic.com/mapfiles/place_api/icons/bar-71.png", “id”:“3ec8233a732b4ee70dbb03034e2e20f84517763d”, "name" : "L'Etoile du Jour", “评分”:4.30, “参考”: “CnRuAAAAgOI6rLfSjaWyY_MRdK8zybHJOmAoqBLEtAgIxaZN5_UAS7WbWSYBukIro9ZCuiXSa9_HCOeHUmKPKkS6j9lxrET8cRX089azCKfvbR-lMFmzUb3Sd2VoWr02yPGJhXDBT7TjMpPPiuTWsZCY0Mcy9xIQHiE-o5v_EURALkxNElUPnRoUXcuht7Ov6k64DT1eA8-t9NR6-O8”, “类型”:[“酒吧”,“餐厅”,“食物”,“机构”], “附近”:“2 Chaussée Marcadé, Abbeville” },

    所以我猜还有更多的原因,但你必须就这个问题向 Google 询问,或者提供你的确切搜索参数(不包括键)让我查看。

    • 这是一个糟糕的主意,因为radarSearch 对您的信用余额的查询量是任何其他 API 的 5 倍,而且它不返回 ID,因此您无法交叉引用。这很可能是一条死胡同。

    【讨论】:

    • 自动完成中的类型与附近搜索的类型不同。附近搜索将允许 type=bar 但自动完成只有 type=establishments。我正在研究foursquares api,因为这似乎是一个死胡同
    • @TalMcMahon:这是一个非常好的前进方向。 Foursquares 在数据方面也更受欢迎,因此您可能会得到比 Google 稍微新鲜的结果。
    猜你喜欢
    • 2015-07-08
    • 1970-01-01
    • 1970-01-01
    • 2014-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-20
    • 2015-08-05
    相关资源
    最近更新 更多