【发布时间】:2012-06-06 22:33:15
【问题描述】:
我正在使用 Foursquare API 来获取某个类别的场地列表。 一个重要的要求是清单是详尽的,即包括所有相关点。 v2/venues/search API 端点对输出实施 50 个场所的限制。 所以想到的第一个想法是将区域分成几个部分(使用“sw”和“ne”参数),然后组合结果。
显然,点的密度会因位置而异,因此我们需要使用某种自适应算法来灵活调整搜索窗口的大小,使其包含所有点。此外,遇到速率限制的风险也会增加,因此我们可能需要算法在其请求配额用完时停止。
最后,判断搜索窗口是否应该进一步缩小的唯一方法似乎是计算结果中的点数:如果我们的点数少于 50,那么我们就有了一个完整的列表部分,可以继续下一个;否则,我们应该进一步拆分它。这似乎很浪费,因为我们将丢弃中间结果(即搜索树中除了叶子之外的所有结果)。
以下是我的一些问题:
- 这是汇总详尽列表的最佳方式吗?也许我是 缺少一些 API 功能?
- 在这种情况下您会使用任何特定算法吗?
- 您将如何减少必须丢弃的结果数量?
提前致谢!
【问题讨论】:
-
对于任何感兴趣的人:我们无法使用技术手段解决此问题。我们必须做出一个业务层面的决定,让我们能够避开这个限制。
-
您是否尝试过使用 offset 参数来迭代定义区域的结果?
标签: api foursquare