From 51bd679b79afd86da1a469c25f10ea9a4bc8cf3c Mon Sep 17 00:00:00 2001 From: Sylvie Ye Date: Thu, 24 Jan 2019 18:42:40 +0100 Subject: [PATCH] [societegenerale] do not stop iter account when transfer page is not available when transfer page is in maintenance: * it raise Client Error Forbidden ... * transfer json page raise browserunavailable --- modules/societegenerale/browser.py | 6 +++--- modules/societegenerale/pages/transfer.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/societegenerale/browser.py b/modules/societegenerale/browser.py index 011061c957..a2afaab758 100644 --- a/modules/societegenerale/browser.py +++ b/modules/societegenerale/browser.py @@ -24,10 +24,10 @@ from dateutil.relativedelta import relativedelta from weboob.browser import LoginBrowser, URL, need_login, StatesMixin -from weboob.exceptions import BrowserIncorrectPassword, ActionNeeded +from weboob.exceptions import BrowserIncorrectPassword, ActionNeeded, BrowserUnavailable from weboob.capabilities.bank import Account, TransferBankError from weboob.capabilities.base import find_object, NotAvailable -from weboob.browser.exceptions import BrowserHTTPNotFound +from weboob.browser.exceptions import BrowserHTTPNotFound, ClientError from weboob.capabilities.profile import ProfileMissing from .pages.accounts_list import ( @@ -163,7 +163,7 @@ def get_accounts_list(self): account_ibans = {} try: self.json_transfer.go() - except TransferBankError: + except (TransferBankError, ClientError, BrowserUnavailable): # some user can't access this page pass else: diff --git a/modules/societegenerale/pages/transfer.py b/modules/societegenerale/pages/transfer.py index ecc547a8de..8bf358d788 100644 --- a/modules/societegenerale/pages/transfer.py +++ b/modules/societegenerale/pages/transfer.py @@ -45,7 +45,7 @@ def on_load(self): if Dict('commun/statut')(self.doc).upper() == 'NOK': if self.doc['commun'].get('action'): raise TransferBankError(message=Dict('commun/action')(self.doc)) - elif self.doc['commun'].get('raison') == 'err_tech': + elif self.doc['commun'].get('raison') in ('err_tech', 'err_is'): # on SG website, there is unavalaible message 'Le service est momentanément indisponible.' raise BrowserUnavailable() else: -- GitLab