执行Twitter API查询,例如:
https://api.twitter.com/1.1/search/tweets.json?q=%23freebandnames&count=100
在大多数情况下,返回的结果比我在count中指定的结果要少。
如果我指定100,我可能会得到87,63,很少100。
如果我指定10,我可能会得到7,0等等。
显然,这不是对可用结果数量的限制。
知道为什么会这样吗?我正在使用节点twitter
模块,但我可以从使用nock记录器看到,Twitter确实返回了这个看似随机的结果#。
答案 0 :(得分:2)
count
是一个上限。但是,这不是唯一的限制因素。 search/tweets
不会返回超过一周的推文。这可能是您有时收到的推文少于您使用count
指定的推文的原因。
使用您的示例,搜索“#freebandnames”,我没有得到任何结果。在twitter.com上搜索相同的#标签,我看到这个主题标签最后一次是在12月6日发布的。这个标签太旧了,无法显示在search/tweets
请求中。
EDIT
如果你缺少不到一周的推文,这很可能只是因为我们真的不知道Twitter在幕后做了什么。在文档中,您将看到,与“Premium”不同,此“标准”端点是“不完整” - doc。此外,还有一个参数result_type
- doc - 您可以将其设置为popular
或recent
。 (默认为mixed
。)您会注意到popular
更常返回count
指定的数字。 Twitter必须应用一种算法来返回与您的过滤器匹配的更高质量的推文。这样做必须删除质量差的推文,但必须先收集count
个推文。