diff --git a/modules/societegenerale/sgpe/browser.py b/modules/societegenerale/sgpe/browser.py index bd5bd5bb..47403cca 100644 --- a/modules/societegenerale/sgpe/browser.py +++ b/modules/societegenerale/sgpe/browser.py @@ -89,10 +89,12 @@ class SGPEBrowser(BaseBrowser): def iter_history(self, account): page = 1 + basecount = 0 while page: self.history(account.id, page) assert self.is_on_page(HistoryPage) - for transaction in self.page.iter_transactions(account): + for transaction in self.page.iter_transactions(account, basecount): + basecount = transaction.id + 1 yield transaction if self.page.has_next(): page += 1 diff --git a/modules/societegenerale/sgpe/pages.py b/modules/societegenerale/sgpe/pages.py index 473b1279..8b726b9e 100644 --- a/modules/societegenerale/sgpe/pages.py +++ b/modules/societegenerale/sgpe/pages.py @@ -113,9 +113,9 @@ class AccountsPage(SGPEPage): class HistoryPage(SGPEPage): - def iter_transactions(self, account): + def iter_transactions(self, account, basecount): table = self.parser.select(self.document.getroot(), '#tab-corps', 1) - for i, tr in enumerate(self.parser.select(table, 'tr', 'many')): + for i, tr in enumerate(self.parser.select(table, 'tr', 'many'), basecount): # td colspan=5 if len(self.parser.select(tr, 'td')) == 1: continue