From 7eb506fae8304ba52359c1ab9fe287f74cfacb86 Mon Sep 17 00:00:00 2001 From: Tomas Groth Date: Sun, 7 Jun 2015 21:56:06 +0100 Subject: [PATCH] Improve network exception handling. --- openlp/core/utils/__init__.py | 5 +++++ openlp/plugins/bibles/lib/http.py | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/openlp/core/utils/__init__.py b/openlp/core/utils/__init__.py index ea896fad7..6516ddc85 100644 --- a/openlp/core/utils/__init__.py +++ b/openlp/core/utils/__init__.py @@ -414,6 +414,11 @@ def get_web_page(url, header=None, update_openlp=False): page = None if retries > CONNECTION_RETRIES: raise + except socket.gaierror: + log.exception('Socket gaierror: {}'.format(url)) + page = None + if retries > CONNECTION_RETRIES: + raise except ConnectionRefusedError: log.exception('ConnectionRefused: {}'.format(url)) page = None diff --git a/openlp/plugins/bibles/lib/http.py b/openlp/plugins/bibles/lib/http.py index fbf18d98e..7cb13df3d 100644 --- a/openlp/plugins/bibles/lib/http.py +++ b/openlp/plugins/bibles/lib/http.py @@ -748,7 +748,10 @@ def get_soup_for_bible_ref(reference_url, header=None, pre_parse_regex=None, pre """ if not reference_url: return None - page = get_web_page(reference_url, header, True) + try: + page = get_web_page(reference_url, header, True) + except: + page = None if not page: send_error_message('download') return None