我试图在一段时间内捕获TweepError异常-尝试-循环除外,但未成功。当发生TweepError/RateLimitError时,以下代码保持停止运行。
import tweepy
import time
name_set = ('name1','name2','name3')
result = []
for screen_name in name_set:
while True:
profile = api.get_user(screen_name = screen_name)
try:
print('collecting user %s'%screen_name)
result.append(profile)
break
except tweepy.RateLimitError:
print('sleep 15 minutes')
sleep(900)
continue
except tweepy.TweepError as e:
print(e)
print('Account %s'%screen_name)
break
else:
print('Account %s'%screen_name)
break
TweepError
TweepError: [{'message': 'User not found.', 'code': 50}]
最佳答案
您应该在try
块中放置一个API调用语句以捕获异常:
try:
profile = api.get_user(screen_name = screen_name)
print('collecting user %s'%screen_name)
...
关于python-3.x - 无法捕获TweepError异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45897600/