Запросы на Python - Тип исключения: ConnectionError - попробуйте: за исключением не работает

Я использую веб-сервис для получения некоторых данных, но иногда URL-адрес не работает, и мой сайт не загружается. Вы знаете, как я могу обработать следующее исключение, поэтому нет проблем с сайтом в случае, если веб-служба не работает?

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)

но ничего не происходит

Ответы

Ответ 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 которое обычно сохраняет ответ на любое значение по умолчанию