python - 如何避免 Twython 中的限速 429 错误

标签 python twitter pandas twython

我创建了一个函数,旨在运行 Twitter handles 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 个句柄,所以我认为会有很多可用的调用。

修复方法是什么?

最佳答案

Twitter GET 关注者/IDs endpoint在 API 1.1 版本中有 15 个请求/每个窗口(15 分钟)的限制,即每小时大约 60 个请求。

另请注意,它还会为每个请求返回多达 5000 个 ID,因此您必须为高度关注的用户发出更多请求。仅作为示例 Barack Obama加载关注者列表需要 40434976/(5000*60*24) = 5.62 天。

关于python - 如何避免 Twython 中的限速 429 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20490994/

相关文章:

Android Twitter Fabric SDK 与 Google GSON 冲突

python - wxPython 类型错误 : String or Unicode type required error

iphone - Twitter+oAuth 引擎在尝试发布状态时返回 401

pandas - 将 Spark 数据帧转换为 Pandas/R 数据帧的要求

python - 如何使用新语法将自定义信号连接到 pyside 中的插槽?

javascript - Meteor 模块化和访问保护 - 一切都是 'global' 吗?

python - 在 imshow 中连接两个颜色图

python - Pulp (Python) 值错误 : need more than 1 value to unpack

Python - 使用字符串列表对字典列表进行特征哈希

python - 组合 pandas 数据框中的列