究竟什么'since_id'和'max_id'在Twitter API中意味着什么

时间:2011-06-20 13:46:01

标签: api twitter tweets

我一直在研究Twitter文档已有一段时间了,而且我已经在一段时间内了解如何获得一段时间内的关注者增长数据/一段时间内的推文数量...... / p>

我想从社区了解Twitter {API中since_idmax_idcount的含义。

我一直关注此页https://developer.twitter.com/en/docs/tweets/timelines/api-reference/get-statuses-user_timeline

我正在尝试为用户获取统计信息 -

  • 特定时间段内的推文数量
  • 特定时间段内的粉丝数
  • 转发次数

我想帮助形成以上的查询字符串。

谢谢..

3 个答案:

答案 0 :(得分:32)

since_id和max_id都是非常简单的参数,可以用来限制从API返回的内容。来自the docs

  

since_id - 使用。返回结果   ID大于(即更近期   比)指定的ID。有   对推文数量的限制   可以通过API访问。如果   Tweets的限制发生以来   since_id,since_id将是   被迫使用最旧的身份证。   max_id - 返回带有ID的结果   小于(即比旧)或   等于指定的ID。

因此,如果您有一个特定的推文ID,您可以使用这两个参数搜索较旧或较新的推文。

count更简单 - 它指定了您想要获取的最大推文数量,最多可达200​​个。

不幸的是,API不会准确地回复您所需的内容 - 您无法在查询user_timeline时指定日期/时间 - 尽管您可以在使用搜索API时指定一个日期/时间。无论如何,如果您需要使用user_timeline,那么您需要轮询API,收集推文,确定它们是否与您想要的参数相匹配,然后相应地计算您的统计数据。

答案 1 :(得分:13)

max_id = tweets id列表的顶部。     since_id = tweets id list的底部。

了解更多:深入了解最后一个图表.. here

答案 2 :(得分:1)

在Twitter API调用的情况下,max_id和since_id用于防止冗余。可视化推入堆栈中的推文。一个API调用必须指定要处理的数量(计数)。但是,在进行此调用时,可能会添加新的推文。在这种情况下,如果抽出一个堆栈并执行该过程,您会注意到在处理过的推文之间可能会有一些“碎片化”或未处理的推文部分。这也是可见的here。 为了解决这个问题,使用了两个参数来跟踪先前处理过的最新/最大ID推文(since_id)和最近处理过的最早/最低的ID推文(max_id)。 since_id指向“片段”的底部,而(max_id-1)指向“片段”的顶部。 (请注意,与since_id不同,max_id具有包容性) 因此,这些参数共同跟踪仍需要处理推文堆栈的哪一部分。