diff --git a/modules/ameli/browser.py b/modules/ameli/browser.py index 295037b49d565e7e0e0777eff9673c1354d6ec70..715c6b888ce86f741e89c742517d840d6aea0ddf 100644 --- a/modules/ameli/browser.py +++ b/modules/ameli/browser.py @@ -21,8 +21,11 @@ from weboob.browser import LoginBrowser, URL, need_login from weboob.exceptions import BrowserIncorrectPassword, ActionNeeded +from .pages import ( + LoginPage, HomePage, CguPage, AccountPage, LastPaymentsPage, PaymentsPage, PaymentDetailsPage, Raw, UnavailablePage, +) from weboob.tools.compat import basestring -from .pages import LoginPage, HomePage, CguPage, AccountPage, LastPaymentsPage, PaymentsPage, PaymentDetailsPage, Raw + __all__ = ['AmeliBrowser'] @@ -38,6 +41,7 @@ class AmeliBrowser(LoginBrowser): paymentdetailsp = URL(r'/PortailAS/paiements.do\?actionEvt=chargerDetailPaiements.*', PaymentDetailsPage) lastpaymentsp = URL(r'/PortailAS/paiements.do\?actionEvt=afficherPaiements.*', LastPaymentsPage) pdf_page = URL(r'PortailAS/PDFServletReleveMensuel.dopdf\?PDF.moisRecherche=.*', Raw) + unavailablep = URL(r'/vu/INDISPO_COMPTE_ASSURES.html', UnavailablePage) def do_login(self): self.logger.debug('call Browser.do_login') diff --git a/modules/ameli/pages.py b/modules/ameli/pages.py index bd0ad8e74f3733fc43a99f6dc248a060ce52c866..b9eb114228a5387a221c0e73c71837876c59185e 100644 --- a/modules/ameli/pages.py +++ b/modules/ameli/pages.py @@ -27,9 +27,11 @@ from weboob.browser.pages import HTMLPage, RawPage, LoggedPage from weboob.capabilities.bill import Subscription, Detail, Bill from weboob.browser.filters.standard import CleanText, Regexp +from weboob.exceptions import BrowserUnavailable # Ugly array to avoid the use of french locale + FRENCH_MONTHS = ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'] @@ -229,3 +231,8 @@ def iter_payment_details(self, sub): class Raw(LoggedPage, RawPage): pass + + +class UnavailablePage(HTMLPage): + def on_load(self): + raise BrowserUnavailable(CleanText('//span[@class="texte-indispo"]')(self.doc))