所以我写了这段代码,使用 tweepy 从 twitters REST API 中读取信息,我想在不超过速率限制的情况下收集大量信息。 这个问题与其说是与tweepy相关的,不如说是一个概念性的问题。 到目前为止,这是我想到的唯一方法:
for i, tweet in enumerate(tweepy.Cursor(api.user_timeline, screen_name = "@twitter").items(1400)):
print(i, tweet.author.name)
if i == 200:
time.sleep(180)
if i == 400:
time.sleep(180)
if i == 600:
time.sleep(180)
if i == 800:
time.sleep(180)
if i == 1000:
time.sleep(180)
if i == 1200:
time.sleep(180)
if i == 1400:
sys.exit()
但是,与其写一堆if语句,还有没有一种更pythonic的方式可以写呢?或者如果它没有坏,就不修复它?
for i, tweet in enumerate(...):
if i % 200 == 0 and i > 0:
time.sleep(180)
这将触发除 0 之外的 200 的每个倍数。