python:如果遇到异常则重试X次,否则退出

时间:2017-01-18 18:31:13

标签: python python-2.7 exception exception-handling httplib

现在如果成功连接它会工作一次,但是如果遇到异常,它就会 不按我的意愿重试,只是扔掉:

var data = {
       dispatch: (type) => {
           .......
       }
    };
import checkout;
checkout(data);

如果所有尝试都没有成功,它应该返回False,如果至少有一个尝试没有回复,则返回True

似乎有些事情很复杂,而且'需要,比如

Will retry: [Errno 111] Connection refused

这是我的代码:

for attempt in range(attempts) and while True

我也试过了:

attempts = 10
for attempt in range(attempts):
   try:
       conn = httplib.HTTPConnection("server:80", timeout=5)
       conn.request("GET","/url")
       r = conn.getresponse()
   except socket.error, serr:
       print("Will retry: %s" % serr)
       conn.close()
   else:
       print("OK")
   finally:
       return False

同样的结果......

1 个答案:

答案 0 :(得分:1)

尝试在while循环中使用计数器和标志。

nil