我正在使用Web服务来检索一些数据,但有时url无法正常工作并且我的网站无法加载。您是否知道如何处理以下异常,以便在Web服务无法正常工作的情况下,站点没有问题?

Django Version: 1.3.1
Exception Type: ConnectionError
Exception Value:
HTTPConnectionPool(host='test.com', port=8580): Max retries exceeded with url:

我用了
try:
   r = requests.get("http://test.com", timeout=0.001)
except requests.exceptions.RequestException as e:    # This is the correct syntax
   print e
   sys.exit(1)

但什么都没发生

最佳答案

您不应该退出工作人员实例sys.exit(1)此外,您正在捕获错误的错误。

例如,您可以做的是:

from requests.exceptions import ConnectionError
try:
   r = requests.get("http://example.com", timeout=0.001)
except ConnectionError as e:    # This is the correct syntax
   print e
   r = "No response"

在这种情况下,您的程序将继续,设置r的值,通常将响应保存为任何默认值

10-08 17:08