拉取所有一个账号的推特关注者,目前只能获取5000个ID
Pulling all of an accounts Twitter followers, currently can only get the 5000 IDs
我已经制作了一个代码,可以使指定 Twitter 帐户的关注者静音,但显然在拉取关注者 ID 时我只能获得 5000。有没有办法让我继续使用 'last seen' 拉取更多方法或游标?
import tweepy
import time
consumer_key = *****
consumer_secret = *****
key = *****
secret = *****
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(key, secret)
api = tweepy.API(auth, wait_on_rate_limit=True)
user_name = 'realdonaldtrump'
def mute():
muted_users = api.mutes_ids()
followers = api.followers_ids(user_name)
try:
for x in followers:
if x in muted_users :
pass
else:
api.create_mute(x)
time.sleep(5)
except Exception:
print('Error')
是的,这个函数支持游标。从 Tweepy examples 开始,您可以像这样使用它们 - 您需要将其修改为静音而不是跟随。
for follower in tweepy.Cursor(api.followers).items():
follower.follow()
对于拥有大量关注者的帐户,您会遇到的问题是此处的速率限制很低 - 15 分钟内有 15 个呼叫 - 因此这将需要很长时间才能完成。您还可能会在一段时间内达到可以静音的帐户数量限制。
我已经制作了一个代码,可以使指定 Twitter 帐户的关注者静音,但显然在拉取关注者 ID 时我只能获得 5000。有没有办法让我继续使用 'last seen' 拉取更多方法或游标?
import tweepy
import time
consumer_key = *****
consumer_secret = *****
key = *****
secret = *****
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(key, secret)
api = tweepy.API(auth, wait_on_rate_limit=True)
user_name = 'realdonaldtrump'
def mute():
muted_users = api.mutes_ids()
followers = api.followers_ids(user_name)
try:
for x in followers:
if x in muted_users :
pass
else:
api.create_mute(x)
time.sleep(5)
except Exception:
print('Error')
是的,这个函数支持游标。从 Tweepy examples 开始,您可以像这样使用它们 - 您需要将其修改为静音而不是跟随。
for follower in tweepy.Cursor(api.followers).items():
follower.follow()
对于拥有大量关注者的帐户,您会遇到的问题是此处的速率限制很低 - 15 分钟内有 15 个呼叫 - 因此这将需要很长时间才能完成。您还可能会在一段时间内达到可以静音的帐户数量限制。