检索用户时间线时超出 Tweepy 速率限制

Tweepy rate limit exceeded when retrieving user timeline

我正在尝试使用 Tweepy 的 user_timeline 模块从 Twitter 用户列表中获取推文。但是我不断收到错误消息 'Rate limit exceeded'。我已经阅读了 Twitter 关于速率限制的文档,并且很确定我没有超过它。

我的代码摘录:

auth = tweepy.OAuthHandler(apikey, apisecret)
auth.set_access_token(AccessToken, AccessTokenSecret)
api = tweepy.API(auth)

user_list = [] #a list of 10 users
for user in user_list:
    tweets=tweepy.Cursor(api.user_timeline,id=user).items(10)

我还打印了 tweepy 的 api.rate_limit_status,正如预期的那样,它显示 user_timeline 的限制已被超出。但是 Twitter 的文档说限制是每 15 分钟 180 window。而且我不认为我已经超过了那个。

'/statuses/user_timeline':{  
        'reset':1438149614,
        'limit':180,
        'remaining':0

有人可以帮忙吗?

当您创建 API 实例时,包含 wait_on_rate_limit 参数(文档显示,它默认为 False)。您还可以添加通知参数,以便在接近限制时知道。 http://docs.tweepy.org/en/latest/api.html

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