首页 > 解决方案 > 推文的渐进式抓取

问题描述

在 Twitter API 中,如何对推文进行渐进式抓取?例如使用搜索 API:

$url = 'https://api.twitter.com/1.1/search/tweets.json';
$getfield = '?q='.urlencode("#thanksgiving").'&count=100'.'&tweet_mode=extended';

最大回报是 100 条推文。但是有超过 100 条推文,现在我如何指定获取接下来的 100 条推文?它是否取决于时间?意味着第一次返回最新的 100 条推文?

标签: phptwitter

解决方案


这不是标准搜索 API 提供的功能。

使用高级搜索 API

要请求下一个“页面”数据,您必须进行与原始查询完全相同的查询,包括查询、toDate 和 fromDate(如果使用),还包括设置为上一个响应值的“下一个”请求参数。这可以与 GET 或 POST 请求一起使用。但是,在 GET 请求的情况下,“下一个”参数必须是 URL 编码的。您可以继续传递上一个查询中的“下一个”元素,直到您收到查询所涵盖时间段内的所有推文。当您收到不包含“下一页”元素的响应时,这意味着您已到达最后一页,并且对于指定的查询和时间范围没有可用的其他数据。

由于您正在传递一个next参数,因此较新的数据是否出现在您已经处理的数据之前并不重要。


推荐阅读