如果我的一个应用程序达到了速率限制,我需要使用其他应用程序进行切换并发出相同的请求。
我正在使用for循环遍历应用程序。如果返回的状态是88,告诉我应用程序已达到速率限制,那么我将使用Continue语句来切换应用程序,否则我会因为请求成功而退出for循环。
page = 1
total_tweets = []
while True:
for app in apps:
response = app.fetch_tweets(id = user["user_id"], page = page)
if response["status"] == 88:
print(app.APP_ID, "reset")
continue
else :
break
print("here")
if response["data"]:
for tweet in response["data"]:
total_tweets.append(tweet._json)
else :
print("here2")
break
page = page + 1
print("done", app.APP_ID, len(total_tweets))
当我点击if语句== 88时,它需要使用for循环中的下一个应用重复该请求。
但是我注意到,当我点击if语句== 88而不是直接循环进行for循环的另一次迭代时,它会打印(“ here”),这意味着它将继续执行代码,而我不希望这样做直到成功发出请求为止(状态不是88时)
我希望当到达时继续直接进入for循环的下一个迭代。
答案 0 :(得分:0)
对我来说,一切正常。 Meby您正在使用break
语句用于另一个应用程序,但是您不知道吗?您可以在break
之前添加其他打印,并检查是哪个应用程序导致了该打印。
您还可以更改if语句:
if response["status"] != 88:
break
else :
print(app.APP_ID, "reset")
因此,在这种情况下,如果状态不同于88(不使用继续),您将自动转到下一个应用程序。