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
の値を設定します。これにより、通常、応答がデフォルト値に保存されます