为什么我会受到这个 Tweepy 脚本的限制?
Why am I being rate limited by this Tweepy script?
我只是在 Python 中使用 tweepy 编写一个简单的 'grab followers' 脚本。当我 运行 脚本时,一切正常。做它需要做的事。尽管我的速率受到很大限制。似乎几乎是瞬间。
我 运行 通过 tweepy 编写其他脚本,该死的,我在之前被限速之前已经抓取了将近 800 个帐户的推文。甚至多次。
有人可以解释一下吗?昨晚我的账户甚至被暂时停用了,只是为了让它完成:-\
import tweepy
APP_KEY = ''
APP_SECRET = ''
result = []
auth = tweepy.AppAuthHandler(APP_KEY, APP_SECRET)
api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify=True)
if not api:
print "Didn't Authenticate!"
sys.exit(-1)
def get_followers(screen_name, filename):
result = []
for page in tweepy.Cursor(api.followers_ids, screen_name=screen_name).pages():
result.extend(page)
write_to = open(filename, 'w')
for num in result:
name = api.get_user(num)
write_to.write(str(name.screen_name) + '\n')
write_to.write(str(len(result)))
write_to.close()
user_input = raw_input('Please enter Twitter name to get followers, or hit enter to use default file:')
if len(user_input) == 0:
user_input = 'names.txt'
for name in user_input:
file_name = str(name) + '.txt'
get_followers(name, file_name)
else:
file_name = str(user_input) + '.txt'
get_followers(user_input, file_name)
您正在使用 followers/id
端点。速率限制为 15 分钟内 15 个请求 window。请参阅文档 here。尝试每分钟发出一次请求,应该没问题。
我只是在 Python 中使用 tweepy 编写一个简单的 'grab followers' 脚本。当我 运行 脚本时,一切正常。做它需要做的事。尽管我的速率受到很大限制。似乎几乎是瞬间。
我 运行 通过 tweepy 编写其他脚本,该死的,我在之前被限速之前已经抓取了将近 800 个帐户的推文。甚至多次。
有人可以解释一下吗?昨晚我的账户甚至被暂时停用了,只是为了让它完成:-\
import tweepy
APP_KEY = ''
APP_SECRET = ''
result = []
auth = tweepy.AppAuthHandler(APP_KEY, APP_SECRET)
api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify=True)
if not api:
print "Didn't Authenticate!"
sys.exit(-1)
def get_followers(screen_name, filename):
result = []
for page in tweepy.Cursor(api.followers_ids, screen_name=screen_name).pages():
result.extend(page)
write_to = open(filename, 'w')
for num in result:
name = api.get_user(num)
write_to.write(str(name.screen_name) + '\n')
write_to.write(str(len(result)))
write_to.close()
user_input = raw_input('Please enter Twitter name to get followers, or hit enter to use default file:')
if len(user_input) == 0:
user_input = 'names.txt'
for name in user_input:
file_name = str(name) + '.txt'
get_followers(name, file_name)
else:
file_name = str(user_input) + '.txt'
get_followers(user_input, file_name)
您正在使用 followers/id
端点。速率限制为 15 分钟内 15 个请求 window。请参阅文档 here。尝试每分钟发出一次请求,应该没问题。