Tweepy搜索保持返回状态代码429



我正在尝试运行以下代码来搜索tweets中的两段文本:

search_words = ['Samsung', 'Amazon']
tweets = []
for tweet in tweepy.Cursor(api.search, q=search_words).items():
tweets.append(tweet.text)

但这种情况不断出现:

推特错误:推特错误响应:状态代码=429

文档中说明我超过了费率限制的内容:

API的速率限制主要基于每个用户,或者更准确地描述为每个用户访问令牌。如果一个方法允许每个速率限制窗口有15个请求,那么它允许每个访问令牌每个窗口有15次请求。

速率限制分为15分钟。所有端点都需要身份验证,因此不存在未经身份验证的呼叫和速率限制的概念。

我的搜索词太宽泛了吗?即使我等待了15分钟,当我重新运行脚本时,甚至当我试图缩小使用的单词(只是为了测试)时,我仍然会遇到同样的错误。

作为一个附带但相关的问题,api.search会返回多少条推文/回到多远的时间?

编辑:进一步研究,我认为Cursor循环使我在第180次循环后达到了极限(每15分钟180次)。有没有一种更有效的方法可以在一个块中搜索所有推文,而不是迭代?

api = tweepy.API(auth,wait_on_rate_limit=True, wait_on_rate_limit_notify=True)

你可以试试这个,看看它是否有帮助,它是一个速率限制器

相关内容

最新更新