如何有效地从连接丢失中恢复?

时间:2014-12-25 06:07:06

标签: python request recover

我使用'requests'模块来获取来自某个给定站点的信息,其频率相对较高。 事实上,我想每隔10秒访问一次远程站点。

我的代码如下:

def get_response_without_ddos_suspect(request_url, timeout=10):
    while True:
        try:
            response = requests.get(request_url, timeout=timeout)
            print response
        except Exception as e:
            print e
        time.sleep(10)

'request_url'是网站提供的一些访问api,所以没问题。 我希望它有效,但实际上功能有时无法工作。 我试图通过打印它们来捕获异常,以发现它只是简单的超时异常。 但我的功能再也没有得到回应。 我觉得这个功能正在等待一些永远不会发生的响应!

但是,当我手动重启该功能时,它会再次开始响应。 所以,我真的很困惑,不知道会发生什么。 这个问题让我困惑了好几天,但是在谷歌搜索并在Stackoverflow中寻找解决方案好几天后,我自己都没能解决。 如何继续访问站点,同时避免在发生异常后不再获取数据。 由于可以通过手动重启程序来恢复,因此应该存在一些方法使功能自动从故障中恢复。 请帮忙。

我是python和spider的新手,所以请尽可能提供详细而全面的解决方案。

0 个答案:

没有答案