diff --git a/modules/bp/browser.py b/modules/bp/browser.py index 0af2b742431e009e9107c9aa40556fc2d97721c9..b76d7bbfbbc394f7ce56d720e2106dedc0dec114 100644 --- a/modules/bp/browser.py +++ b/modules/bp/browser.py @@ -525,7 +525,7 @@ def iter_subscriptions(self): @need_login def iter_documents(self, subscription): self.subscription.go() - params = self.page.get_params(sub_label=subscription.label) + params = self.page.get_params(subscription._full_id) for year in self.page.get_years(): params['formulaire.anneeRecherche'] = year diff --git a/modules/bp/pages/subscription.py b/modules/bp/pages/subscription.py index 073d3a9cb761929a39e8b774b64de0f21d2ef902..83c9d9063d91e799a6101a04e55b24bdaa13f957 100644 --- a/modules/bp/pages/subscription.py +++ b/modules/bp/pages/subscription.py @@ -40,6 +40,7 @@ class item(ItemElement): klass = Subscription obj_id = Regexp(Attr('.', 'value'), r'\w-(\w+)') + obj__full_id = CleanText('./@value') obj_label = CleanText('.') obj_subscriber = Env('subscriber') @@ -79,9 +80,9 @@ def obj_date(self): dayfirst=True )(self) - def get_params(self, sub_label): + def get_params(self, sub_full_id): # the id is in the label - sub_value = Attr('//select[@id="compte"]/option[contains(text(), "%s")]' % sub_label, 'value')(self.doc) + sub_value = Attr('//select[@id="compte"]/option[contains(@value, "%s")]' % sub_full_id, 'value')(self.doc) form = self.get_form(name='formulaireHistorique') form['formulaire.numeroCompteRecherche'] = sub_value