From 3dcc011357260917a16c576d552714a596669c36 Mon Sep 17 00:00:00 2001 From: Guillaume Risbourg Date: Fri, 3 Jan 2020 09:32:44 +0100 Subject: [PATCH] [cmso] Raise BrowserUnavailable when HistoryPage contains an exception The exception is temporary and retrying usually fix the error. --- modules/cmso/par/pages.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/modules/cmso/par/pages.py b/modules/cmso/par/pages.py index 39608ab8bc..155bc0892a 100644 --- a/modules/cmso/par/pages.py +++ b/modules/cmso/par/pages.py @@ -26,6 +26,7 @@ from collections import OrderedDict +from weboob.exceptions import BrowserUnavailable from weboob.browser.pages import HTMLPage, JsonPage, RawPage, LoggedPage, pagination from weboob.browser.elements import DictElement, ItemElement, TableElement, SkipItem, method from weboob.browser.filters.standard import CleanText, Upper, Date, Regexp, Format, CleanDecimal, Filter, Env, Slugify, Field @@ -334,6 +335,13 @@ def next_page(self): return requests.Request('POST', data=json.dumps(data), headers={'Content-Type': 'application/json'}) def parse(self, el): + exception = Dict('exception', default=None)(self) + if exception: + message = exception.get('message', '') + assert 'SERVICE_INDISPONIBLE' in message, 'Unknown error in history page: "%s"' % message + # The error message is a stack trace so we do not + # send it. + raise BrowserUnavailable() # Key only if coming key = Env('key', default=None)(self) if key: -- GitLab