gpt4 book ai didi

python - Tweepy Hipchat API - 除了速率限制?

转载 作者:太空宇宙 更新时间:2023-11-04 06:12:15 24 4
gpt4 key购买 nike

我有这个代码来获得 Twitter 用户的关注者:

followers=[]
for user in tweepy.Cursor(api.followers,id=uNameInput).items():
followers.append(user.screen_name)

但是,如果将其用于具有多个关注者的用户,则脚本会受到速率限制并停止。我通常会在一段时间内把它说成是真的;尝试,除了 else break loop 但不确定在这种情况下它会去哪里。

最佳答案

如果您想避免速率限制,您可以/应该在下一个关注者页面请求之前等待:

for user in tweepy.Cursor(api.followers, id=uNameInput).items():
followers.append(user.screen_name)
time.sleep(60)

看起来不漂亮,但应该有帮助。

UPD:据官方twitter limits ,您每 15 分钟的时间间隔只能发出 30 个请求来获得 关注者

因此,您可以捕获速率限制异常并等待 15 分钟的间隔结束,或者定义一个计数器并确保您在每 15 分钟的间隔内发出的请求不会超过 30 个。

这是一个示例,您可以如何捕获 tweepy 异常并等待 15 分钟,然后再转到下一部分关注者:

import time
import tweepy

auth = tweepy.OAuthHandler(..., ...)
auth.set_access_token(..., ...)

api = tweepy.API(auth)
items = tweepy.Cursor(api.followers, screen_name="gvanrossum").items()

while True:
try:
item = next(items)
except tweepy.TweepError:
time.sleep(60 * 15)
item = next(items)

print item

虽然不确定这是最好的方法。

UPD2:还有另一种选择:您可以检查 rate_limit_status ,查看 followers 剩余的请求数量,然后决定是等待还是继续。

希望对您有所帮助。

关于python - Tweepy Hipchat API - 除了速率限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18053514/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com