Skip to content
GitLab
Explorer
Connexion
Navigation principale
Rechercher ou aller à…
Projet
Attrap
Gestion
Activité
Membres
Labels
Programmation
Tickets
Tableaux des tickets
Jalons
Wiki
Code
Requêtes de fusion
Dépôt
Branches
Validations
Étiquettes
Graphe du dépôt
Comparer les révisions
Compilation
Pipelines
Jobs
Planifications de pipeline
Artéfacts
Déploiement
Releases
Registre de paquets
Registre de conteneur
Opération
Modules Terraform
Aide
Aide
Support
Documentation de GitLab
Comparer les forfaits GitLab
Forum de la communauté
Contribuer à GitLab
Donner votre avis
Conditions générales et politique de confidentialité
Raccourcis clavier
?
Extraits de code
Groupes
Projets
Afficher davantage de fils d'Ariane
ketsapiwiq
Attrap
Validations
75f8ed62
Valider
75f8ed62
rédigé
Il y a 3 mois
par
Bastien Le Querrec
Parcourir les fichiers
Options
Téléchargements
Correctifs
Plain Diff
pref976: détecte l'URL de l'année voulue automatiquement
parent
b7a35e56
Aucune branche associée trouvée
Branches contenant la validation
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Modifications
1
Masquer les modifications d'espaces
En ligne
Côte à côte
Affichage de
1 fichier modifié
Attrap_pref976.py
+19
-28
19 ajouts, 28 suppressions
Attrap_pref976.py
avec
19 ajouts
et
28 suppressions
Attrap_pref976.py
+
19
−
28
Voir le fichier @
75f8ed62
...
@@ -11,15 +11,7 @@ class Attrap_pref976(Attrap):
...
@@ -11,15 +11,7 @@ class Attrap_pref976(Attrap):
# Config
# Config
hostname
=
'
https://www.mayotte.gouv.fr
'
hostname
=
'
https://www.mayotte.gouv.fr
'
raa_page
=
{
raa_page
=
f
'
{
hostname
}
/Publications/Recueil-des-actes-administratifs-R.A.A
'
'
default
'
:
f
'
{
hostname
}
/Publications/Recueil-des-actes-administratifs-R.A.A
'
,
'
2024
'
:
f
'
{
hostname
}
/Publications/Recueil-des-actes-administratifs-R.A.A/RAA-2024
'
,
'
2023
'
:
f
'
{
hostname
}
/Publications/Recueil-des-actes-administratifs-R.A.A/RAA-2023
'
,
'
2022
'
:
f
'
{
hostname
}
/Publications/Recueil-des-actes-administratifs-R.A.A/RAA-2022
'
,
'
2021
'
:
f
'
{
hostname
}
/Publications/Recueil-des-actes-administratifs-R.A.A/RAA-2021
'
,
'
2020
'
:
f
'
{
hostname
}
/Publications/Recueil-des-actes-administratifs-R.A.A/RAA-2020
'
,
'
2019
'
:
f
'
{
hostname
}
/Publications/Recueil-des-actes-administratifs-R.A.A/RAA-2019
'
}
user_agent
=
'
Mozilla/5.0 (Windows NT 10.0; rv:109.0) Gecko/20100101 Firefox/115.0
'
user_agent
=
'
Mozilla/5.0 (Windows NT 10.0; rv:109.0) Gecko/20100101 Firefox/115.0
'
full_name
=
'
Préfecture de Mayotte
'
full_name
=
'
Préfecture de Mayotte
'
short_code
=
'
pref976
'
short_code
=
'
pref976
'
...
@@ -30,24 +22,23 @@ class Attrap_pref976(Attrap):
...
@@ -30,24 +22,23 @@ class Attrap_pref976(Attrap):
self
.
set_sleep_time
(
30
)
self
.
set_sleep_time
(
30
)
def
get_raa
(
self
,
keywords
):
def
get_raa
(
self
,
keywords
):
pages_to_parse
=
[]
year_pages_to_parse
=
[]
if
self
.
not_before
.
year
<=
2024
:
pages_to_parse
.
append
(
self
.
raa_page
[
'
2024
'
])
# On récupère les pages d'années
if
self
.
not_before
.
year
<=
2023
:
page_content
=
self
.
get_page
(
self
.
raa_page
,
'
get
'
).
content
pages_to_parse
.
append
(
self
.
raa_page
[
'
2023
'
])
for
card
in
self
.
get_sub_pages
(
if
self
.
not_before
.
year
<=
2022
:
page_content
,
pages_to_parse
.
append
(
self
.
raa_page
[
'
2022
'
])
'
div.fr-card__body div.fr-card__content h2.fr-card__title a
'
,
if
self
.
not_before
.
year
<=
2021
:
self
.
hostname
,
pages_to_parse
.
append
(
self
.
raa_page
[
'
2021
'
])
False
if
self
.
not_before
.
year
<=
2020
:
):
pages_to_parse
.
append
(
self
.
raa_page
[
'
2020
'
])
if
Attrap
.
guess_date
(
card
[
'
name
'
],
'
([0-9]{4})
'
).
year
>=
self
.
not_before
.
year
:
if
self
.
not_before
.
year
<=
2019
:
year_pages_to_parse
.
append
(
card
[
'
url
'
])
pages_to_parse
.
append
(
self
.
raa_page
[
'
2019
'
])
pages_to_parse
=
[
self
.
raa_page
]
sub_pages_to_parse
=
[
self
.
raa_page
[
'
default
'
]]
# Pour chaque année, on cherche les sous-pages de mois
# Pour chaque année, on cherche les sous-pages de mois
for
raa_page
in
pages_to_parse
:
for
raa_page
in
year_
pages_to_parse
:
page_content
=
self
.
get_page
(
raa_page
,
'
get
'
).
content
page_content
=
self
.
get_page
(
raa_page
,
'
get
'
).
content
month_pages
=
self
.
get_sub_pages
(
month_pages
=
self
.
get_sub_pages
(
page_content
,
page_content
,
...
@@ -59,7 +50,7 @@ class Attrap_pref976(Attrap):
...
@@ -59,7 +50,7 @@ class Attrap_pref976(Attrap):
# On regarde aussi si sur la page de l'année il n'y aurait pas un
# On regarde aussi si sur la page de l'année il n'y aurait pas un
# RAA mal catégorisé
# RAA mal catégorisé
for
page_to_parse
in
self
.
find_raa_card
(
raa_page
):
for
page_to_parse
in
self
.
find_raa_card
(
raa_page
):
sub_
pages_to_parse
.
append
(
page_to_parse
)
pages_to_parse
.
append
(
page_to_parse
)
# Pour chaque mois, on cherche les pages des RAA
# Pour chaque mois, on cherche les pages des RAA
for
month_page
in
month_pages
:
for
month_page
in
month_pages
:
...
@@ -68,11 +59,11 @@ class Attrap_pref976(Attrap):
...
@@ -68,11 +59,11 @@ class Attrap_pref976(Attrap):
month_page
[
'
url
'
],
month_page
[
'
url
'
],
year
year
):
):
sub_
pages_to_parse
.
append
(
page_to_parse
)
pages_to_parse
.
append
(
page_to_parse
)
# On parse les pages contenant des RAA
# On parse les pages contenant des RAA
elements
=
[]
elements
=
[]
for
page
in
sub_
pages_to_parse
:
for
page
in
pages_to_parse
:
page_content
=
self
.
get_page
(
page
,
'
get
'
).
content
page_content
=
self
.
get_page
(
page
,
'
get
'
).
content
for
element
in
self
.
get_raa_elements
(
page_content
):
for
element
in
self
.
get_raa_elements
(
page_content
):
elements
.
append
(
element
)
elements
.
append
(
element
)
...
...
Ce diff est replié.
Cliquez pour l'agrandir.
Aperçu
0%
Chargement en cours
Veuillez réessayer
ou
joindre un nouveau fichier
.
Annuler
You are about to add
0
people
to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Enregistrer le commentaire
Annuler
Veuillez vous
inscrire
ou vous
se connecter
pour commenter