diff --git a/modules/s2e/browser.py b/modules/s2e/browser.py index 4bb140d32d43e4bb7d3ada36fb9882477f299534..bd168f37e8a38a71c38fec0ba64c1ac5bf9993c6 100644 --- a/modules/s2e/browser.py +++ b/modules/s2e/browser.py @@ -146,9 +146,9 @@ def iter_history(self, account): self.page.go_multi(account._multi) self.history.go(slug=self.SLUG) # Get more transactions on each page - self.page.show_more("50") - for tr in self.page.iter_history(accid=account.id): - yield tr + if self.page.show_more("50"): + for tr in self.page.iter_history(accid=account.id): + yield tr # Go back to first page self.page.go_start() diff --git a/modules/s2e/pages.py b/modules/s2e/pages.py index 324e6a01ccff820704b0cdbfbecc753928570736..6eb0fda175fc2856d4a7c29cdcaa27652465d1e1 100644 --- a/modules/s2e/pages.py +++ b/modules/s2e/pages.py @@ -504,7 +504,10 @@ def get_history_form(self, idt, args={}): return form def show_more(self, nb): - form = self.get_form(self.XPATH_FORM) + try: + form = self.get_form(self.XPATH_FORM) + except FormNotFound: + return False for select in self.doc.xpath('//select'): if Attr('./option[@selected]', 'value')(select) == nb: return @@ -513,6 +516,7 @@ def show_more(self, nb): if 'javax.faces.source' not in form: form['javax.faces.source'] = idt form.submit() + return True def go_start(self): idt = Attr('//a[@title="debut" or @title="precedent"]', 'id', default=None)(self.doc)