【问题标题】:Searching closest venues using ll and radius not working properly使用 ll 和 radius 搜索最近的场地无法正常工作
【发布时间】:2014-08-21 21:48:11
【问题描述】:

我知道有很多关于这个问题的问题,但我已经到了一个地步,我真的无能为力,只能询问其他人是否有解决这个问题的办法......

使用 Foursquare api explorer 来测试我的查询,我似乎无法获得准确甚至适合我需要获得的数据的数据。

这很简单。 我需要从一组坐标中获取最近的地点。如果附近什么都没有,我不介意没有结果。

所以,阅读 API 文档 (https://developer.foursquare.com/docs/venues/venues) 我得出结论,我需要搜索而不是探索,因为我不想要推荐地点的建议(我测试它的结果证明它不是我期待)。

所以,使用搜索 api 我想找到靠近这些坐标的地方(那个地方,但地方会做......)

ll=37.424782,-122.162989

考虑到我想要附近的地方,我添加了

半径=51

我真的不想要很多结果

限制=2

从文档中我看到半径是

仅对带有 intent=browse 的请求或带有 intent=checkin 和 categoryId 或查询

所以,我用

意图=浏览

我的查询结束于: 场地/搜索?intent=browse&ll=37.424782,-122.162989&radius=51&limit=2

查询结果: https://developer.foursquare.com/docs/explore#req=venues/search%3Fintent%3Dbrowse%26ll%3D37.424782,-122.162989%26radius%3D51%26limit%3D2

这里我们可以看到第一个结果是直接在半径之外...距离:135 然而,第二个结果很酷......距离:50

我做错了什么才能得到这些结果?如果我增加限制,我得到的只是更多也在半径之外的结果,我可以遍历它们并找到距离最小的结果......但我不能保证最接近的结果会在顶部 X我限制,即使我有这个保证,对于一个看似简单的问题,这将是一个令人厌烦的解决方案......

感谢您的帮助... 马克


编辑:


我设法使查询按预期执行...但我必须添加以下所有父类别:

https://developer.foursquare.com/categorytree

categoryId=
4d4b7104d754a06370d81259,  Arts & Entertainment
4d4b7105d754a06372d81259,  College & University
4d4b7105d754a06373d81259,  Event
4d4b7105d754a06374d81259,  Food
4d4b7105d754a06376d81259,  Nightlife Spot
4d4b7105d754a06377d81259,  Outdoors & Recreation
4d4b7105d754a06375d81259,  Professional & Other Places
4e67e38e036454776db1fb3a,  Residence
4d4b7105d754a06378d81259,  Shop & Service
4d4b7105d754a06379d81259   Travel & Transport

将我的查询变成: 场地/搜索?

意图=签&LL = 37.424782,-122.162989&半径= 60&的categoryId = 4d4b7104d754a06370d81259,4d4b7105d754a06372d81259,4d4b7105d754a06373d81259,4d4b7105d754a06374d81259,4d4b7105d754a06376d81259,4d4b7105d754a06377d81259,4d4b7105d754a06375d81259,4e67e38e036454776db1fb3a,4d4b7105d754a06378d81259,4d4b7105d754a06379d81259 P>

查询结果: https://developer.foursquare.com/docs/explore#req=venues/search%3Fintent%3Dcheckin%26ll%3D37.424782,-122.162989%26radius%3D60%26categoryId%3D4d4b7104d754a06370d81259,4d4b7105d754a06372d81259,4d4b7105d754a06373d81259,4d4b7105d754a06374d81259,4d4b7105d754a06376d81259,4d4b7105d754a06377d81259,4d4b7105d754a06375d81259,4e67e38e036454776db1fb3a,4d4b7105d754a06378d81259,4d4b7105d754a06379d81259

在我的半径范围之外仍然有结果......但这是一个可接受的误差范围......然而这很奇怪。

【问题讨论】:

    标签: foursquare


    【解决方案1】:

    我设法使查询按预期执行...但我必须添加以下所有父类别:

    https://developer.foursquare.com/categorytree

    类别 ID= 4d4b7104d754a06370d81259, 艺术与娱乐 4d4b7105d754a06372d81259,学院和大学 4d4b7105d754a06373d81259, 事件 4d4b7105d754a06374d81259, 食品 4d4b7105d754a06376d81259, 夜生活点 4d4b7105d754a06377d81259,户外和休闲 4d4b7105d754a06375d81259,专业及其他场所 4e67e38e036454776db1fb3a, 住宅 4d4b7105d754a06378d81259,商店和服务 4d4b7105d754a06379d81259 旅行和运输 使我的查询进入:场所/搜索?

    意图=签&LL = 37.424782,-122.162989&半径= 60&的categoryId = 4d4b7104d754a06370d81259,4d4b7105d754a06372d81259,4d4b7105d754a06373d81259,4d4b7105d754a06374d81259,4d4b7105d754a06376d81259,4d4b7105d754a06377d81259,4d4b7105d754a06375d81259,4e67e38e036454776db1fb3a,4d4b7105d754a06378d81259,4d4b7105d754a06379d81259 P>

    查询结果:https://developer.foursquare.com/docs/explore#req=venues/search%3Fintent%3Dcheckin%26ll%3D37.424782,-122.162989%26radius%3D60%26categoryId%3D4d4b7104d754a06370d81259,4d4b7105d754a06372d81259,4d4b7105d754a06373d81259,4d4b7105d754a06374d81259,4d4b7105d754a06376d81259,4d4b7105d754a06377d81259,4d4b7105d754a06375d81259,4e67e38e036454776db1fb3a,4d4b7105d754a06378d81259,4d4b7105d754a06379d81259

    在我的半径范围之外仍然有结果......但这是一个可接受的误差范围......然而这很奇怪。

    【讨论】:

      【解决方案2】:

      虽然这个问题很老,但我正在为其他人回答。我最近在做类似的事情,我了解到,为了使用半径,您还需要使用“查询”参数。我所做的是使用星号“*”,它对我有用。我不得不说,虽然 50 的限制是我目前尚未解决的问题。

      【讨论】:

        猜你喜欢
        • 2016-07-22
        • 2021-05-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-04
        • 2021-11-10
        • 2017-01-28
        • 2013-12-23
        相关资源
        最近更新 更多