From 0f35db7bb2f8d70ce347b7c6deb098c73ce9440f Mon Sep 17 00:00:00 2001 From: Sylvie Ye Date: Tue, 29 Jan 2019 18:54:31 +0100 Subject: [PATCH] [societegenerale] raise NoAccountsException when there is no account message --- modules/societegenerale/browser.py | 1 + modules/societegenerale/pages/accounts_list.py | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/societegenerale/browser.py b/modules/societegenerale/browser.py index 6e1ee76b28..51ca1535aa 100644 --- a/modules/societegenerale/browser.py +++ b/modules/societegenerale/browser.py @@ -162,6 +162,7 @@ def iter_cards(self, account): @need_login def get_accounts_list(self): self.accounts_main_page.go() + self.page.is_accounts() if self.page.is_old_website(): # go on new_website diff --git a/modules/societegenerale/pages/accounts_list.py b/modules/societegenerale/pages/accounts_list.py index 88277d4803..08f113b92d 100644 --- a/modules/societegenerale/pages/accounts_list.py +++ b/modules/societegenerale/pages/accounts_list.py @@ -36,7 +36,7 @@ ) from weboob.browser.filters.html import Link, TableCell from weboob.browser.pages import HTMLPage, XMLPage, JsonPage, LoggedPage, pagination -from weboob.exceptions import BrowserUnavailable, ActionNeeded +from weboob.exceptions import BrowserUnavailable, ActionNeeded, NoAccountsException def MyDecimal(*args, **kwargs): @@ -72,6 +72,11 @@ class AccountsMainPage(LoggedPage, HTMLPage): def is_old_website(self): return Link('//a[contains(text(), "Afficher la nouvelle consultation")]', default=None)(self.doc) + def is_accounts(self): + error_msg = CleanText('//span[@class="error_msg"]')(self.doc) + if 'Vous ne disposez pas de compte consultable' in error_msg: + raise NoAccountsException(error_msg) + class AccountDetailsPage(LoggedPage, HTMLPage): pass -- GitLab