为什么有些tweet是在searchapi中,而不是在streaming api和vice-ver中

2024-05-15 09:42:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个脚本,它使用twitter streaming api将短语(例如“python”)的传入tweet存储到数据库表“a”中。稍后,另一个脚本使用twitter search api搜索同一个短语,并将结果存储到表“B”中。我的问题是为什么在“A”中有一些tweet不在“B”中,反之亦然。在

我可以想出一个理由,在“B”而不是“A”中有tweet:

“A”只包含在streamingapi启动后发布的tweet,而search api返回上周的结果。如果流媒体应用程序接口已经运行了一个星期以上,那么在“B”中不能有任何不在“a”中的tweet。在

我知道有两个原因让一些tweet在“A”而不是“B”:

  1. 搜索API只返回上周的结果,而流式API则返回所有内容
  2. 搜索API只返回部分结果,而不是全部,因为它的重点不在完整性上。在

我想确认一下我是否正确。在


Tags: 脚本api数据库内容search流式原因twitter
1条回答
网友
1楼 · 发布于 2024-05-15 09:42:49

对于“B”而不是“A”,你是对的。一个很明显的迹象是你在搜索API中的链接:

It allows queries against the indices of recent or popular Tweets...

对于“A”而不是“B”中的“A”,您也正确,但有一些小错误。在

  1. 流式API不会返回所有内容,仅返回1% 在所有的推文中。1%的过滤是在Twitter内部完成的 目前还没有任何迹象表明这是如何做到的。不久前,有一个关于修正1%使之成为真正的1%的警告,但我似乎找不到阅读它的链接。在
  2. 使用流式API,您也会受到(更常见的)影响:
    • 公共流限制(达到1%)
    • 失速警告(警告)

其他几个取决于您的使用情况https://dev.twitter.com/streaming/overview/messages-types

相关问题 更多 >