我不知道为什么我这么快得到速率限制:
mentions = []
for tweet in tweepy.Paginator(client.search_all_tweets, query= "to:######## lang:nl -is:retweet",
start_time = "2022-01-01T00:00:00Z", end_time = "2022-05-31T00:00:00Z",
max_results=500).flatten(limit=10000):
mention = tweet.text
mentions.append(mention)
我想我可以把time.sleep(1)
放在这些行之后,但这意味着我每秒只能处理一条Tweet,而使用常规的client.search_all_tweets
,我每次请求将获得500条Tweet。
我在这里错过了什么吗?如何使用tweepy.Paginator
在一秒钟内处理多个Tweet ?
顺便说一句:我有学术访问权限,并且知道速率限制文档。
请参阅Tweepy文档中的FAQ部分:
为什么使用
Client.search_all_tweets()
和Paginator
时我得到速率限制这么快?
Client.search_all_tweets()
使用的GET/2/tweets/search/all Twitter API端点有一个额外的每秒1个请求的速率限制,Paginator
不处理。您可以在迭代响应时1秒
time.sleep()
来处理此速率限制。
请参阅相关的Tweepy问题#1688和#1871。