diff --git a/Attrap_pref62.py b/Attrap_pref62.py index 79b73bc0bc596f6808de9e23d288c141bd1209d8..7273d3e6541544a45c51372a5f562336392974e6 100644 --- a/Attrap_pref62.py +++ b/Attrap_pref62.py @@ -11,31 +11,7 @@ class Attrap_pref62(Attrap): # Config __HOST = 'https://www.pas-de-calais.gouv.fr' - __RAA_PAGE = { - '2024': [ - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2024-Recueils-des-actes-administratifs' - ], - '2023': [ - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2023-Recueils-des-actes-administratifs', - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2023-Recueils-speciaux-des-actes-administratifs' - ], - '2022': [ - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2022-Recueils-des-Actes-Administratifs', - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2022-Recueils-Speciaux-des-Actes-Administratifs' - ], - '2021': [ - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2021-Recueils-des-actes-administratifs', - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2021-Recueils-speciaux-des-actes-administratifs' - ], - '2020': [ - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2020-Recueils-des-actes-administratifs', - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2020-Recueils-speciaux-des-actes-administratifs' - ], - '2019': [ - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2019-Recueil-des-actes-administratifs', - f'{__HOST}/Publications/Recueil-des-actes-administratifs/2019-Recueils-speciaux-des-actes-administratifs' - ] - } + __RAA_PAGE = f'{__HOST}/Publications/Recueil-des-actes-administratifs' __USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; rv:109.0) Gecko/20100101 Firefox/115.0' full_name = 'Préfecture du Pas-de-Calais' short_code = 'pref62' @@ -46,24 +22,18 @@ class Attrap_pref62(Attrap): def get_raa(self, keywords): pages_to_parse = [] - if self.not_before.year <= 2024: - for page in self.__RAA_PAGE['2024']: - pages_to_parse.append(page) - if self.not_before.year <= 2023: - for page in self.__RAA_PAGE['2023']: - pages_to_parse.append(page) - if self.not_before.year <= 2022: - for page in self.__RAA_PAGE['2022']: - pages_to_parse.append(page) - if self.not_before.year <= 2021: - for page in self.__RAA_PAGE['2021']: - pages_to_parse.append(page) - if self.not_before.year <= 2020: - for page in self.__RAA_PAGE['2020']: - pages_to_parse.append(page) - if self.not_before.year <= 2019: - for page in self.__RAA_PAGE['2019']: - pages_to_parse.append(page) + + # On détermine quelles pages d'année parser + year_pages = self.get_sub_pages_with_pager( + self.__RAA_PAGE, + 'div.fr-card.fr-card--horizontal.fr-card--sm.fr-enlarge-link.fr-mb-3w div.fr-card__body div.fr-card__content h2.fr-card__title a.fr-card__link', + 'ul.fr-pagination__list li a.fr-pagination__link.fr-pagination__link--next.fr-pagination__link--lg-label', + 'div.fr-card.fr-card--horizontal.fr-card--sm.fr-enlarge-link.fr-mb-3w div.fr-card__body div.fr-card__content div.fr-card__end p.fr-card__detail', + self.__HOST + ) + for year_page in year_pages: + if Attrap.guess_date(year_page['name'].strip(), '([0-9]{4}).*').year >= self.not_before.year: + pages_to_parse.append(year_page['url']) elements = [] for raa_page in pages_to_parse: