簡體   English   中英

如何避免 Twython 中的速率限制 429 錯誤

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM