我创建了一个设计用于运行一系列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(太多请求),超出了速率限制'
列表只有100个句柄,所以我假设有很多可用的电话。
修复它的方法是什么?
答案 0 :(得分:3)
API API版本中的Twitter GET关注者/ ids endpoint有15个请求/每个窗口(15分钟)限制,即每小时约60个请求。
另请注意,每个请求最多还会返回5000个ID,因此您必须为高度关注的用户发出更多请求。例如,只有Barack Obama关注者列表才会加载40434976/(5000*60*24) = 5.62
天。
答案 1 :(得分:0)
您可以使用Twython的get_lastfunction_header('x-rate-limit-remaining')。