[英]How to avoid rate-limiting 429 error in Twython
我创建了一个函数,旨在通过 Twitter 处理 Pandas 数据帧的列运行,但它似乎总是在 14 次调用后总是遇到速率限制错误。
这是代码。
def poll_twitter(dfr):
followers = twitter.get_followers_ids(screen_name = dfr['handle'])
time.sleep(5)
print "looping..."
return len(followers['ids'])
df[datetime.datetime.today()] = df.apply(poll_twitter, axis=1)
这是错误
TwythonRateLimitError: (u'Twitter API 返回 429 (Too Many Requests), Rate limit exceeded'
该列表只有 100 个句柄,所以我认为会有很多可用的调用。
有什么修复方法?
API 1.1 版本中的 Twitter GET 关注者/ids端点有 15 个请求/每个窗口(15 分钟)的限制,即每小时大约 60 个请求。
另请注意,它还会为每个请求返回最多 5000 个 ID,因此您必须为高度关注的用户发出更多请求。 例如,只有Barack Obama 的40434976/(5000*60*24) = 5.62
列表需要40434976/(5000*60*24) = 5.62
天才能加载。
您可以使用 Twython 的 get_lastfunction_header('x-rate-limit-remaining')。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.