簡體   English   中英

最大限度地提高Twitter對日志關注者的速率限制

[英]Maximizing Twitter's rate limit to log followers

Twitter API的速率限制為每15分鍾15個請求。

我正在嘗試使用python來運行並編譯我的關注者列表,但是由於某些原因,當僅記錄300個關注者時,速率限制達到最大值。 我讀過,最高限額應該接近5,000。 我要去哪里錯了?

如果我有成千上萬,甚至超過一百萬的追隨者,並試圖打印每個追隨者的列表,那么在達到速率限制之前,如何才能最大化Python / twitter返回的追隨者的數量?

這是我到目前為止的代碼:

followers = tweepy.Cursor(client.followers, id=screenName)
for follower in followers.items():
    info=[]
    name =follower.name
    screen_name = follower.screen_name

    userId = userId + 1

    info.append(userId)
    info.append(name)
    info.append(screen_name)

    csvFile = open('followers.csv','a')
    newFile =csv.writer(csvFile) #imported csv
    newFile.writerow(info)
    #close file
    csvFile.close()

當您訪問client.followers中的tweepy ,您實際上是在執行此Twitter請求GET關注者列表 在此請求中,您有兩個限制:

(1)每15分鍾窗口的請求數:

請求/ 15分鍾窗口(用戶身份驗證)15

請求/ 15分鍾窗口(應用驗證)30

(2)每個請求可獲取的關注者數量,請參閱參數count

每頁返回的用戶數,最大為200。默認值為20。

因此,僅舉一個例子,假設所有用戶都有200個關注者,您可以在15分鍾的窗口中獲得15個用戶的關注者,而您總共可以獲得3000個關注者。 另一個示例,如果用戶有3000個關注者,則需要15個請求才能全部獲取他們,然后您將使用完整的15分鍾窗口。 (我假設您使用用戶身份驗證)。

另一方面,如果您的用戶只有1個關注者,則每15分鍾窗口您將獲得15個關注者。

您提到的數字5000用於另一個Twitter請求GET跟隨者ID ,在tweepyclient.followers_ids 在這一章中,您沒有獲得用戶的全部信息,只有ID,但是速率限制不太嚴格:

(1)每15分鍾窗口的請求數:

請求/ 15分鍾窗口(用戶身份驗證)15

請求/ 15分鍾窗口(應用身份驗證)15

(2)您可以在每個請求中獲取的關注者ID的數量,請參閱參數count

指定嘗試檢索的ID的數量,每個不同的請求最多為5,000。

因此,通過此請求,您每個窗口最多可以獲得15 * 5000 = 75000個關注者(但是,我堅持只有ID的關注者)。

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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