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
Comparer les révisions
main to f69e5af484da973bb396f9ede8f39b6abe7acf36
Comparer les révisions
Les modifications sont affichées comme si la révision
source
était fusionnée avec la révision
cible
.
En savoir plus sur la comparaison des révisions.
Source
ketsapiwiq/Attrap
Sélectionner le projet cible
No results found
f69e5af484da973bb396f9ede8f39b6abe7acf36
Sélectionner une révision Git
Échanger
Cible
la-quadrature-du-net/Attrap
Sélectionner le projet cible
la-quadrature-du-net/Attrap
foggyfrog/Attrap
skhwiz/Attrap
precambrien/Attrap
ketsapiwiq/Attrap
Joseki/Attrap
kr1p/attrap-pref-12
kr1p/attrap-pref-46
kr1p/attrap-pi
Guinness/Attrap
astroidgritty/attrap-pref-84
davinov/Attrap
maettellite/attrap-pref-01
m242/Attrap
multi/Attrap
mverdeil/Attrap
olpo/Attrap
17 résultats
main
Sélectionner une révision Git
Afficher les modifications
Uniquement les modifications entrantes de la source
Inclure les modifications apportées à la cible depuis la création de la source
Comparer
Validations sur la source (4)
pref2b: Ajout de la prefecture de la haute corse
· 476d866a
Felix Lena
a rédigé
Il y a 10 mois
et
Elunias
a validé
Il y a 10 mois
476d866a
update .gitlab-ci.yml for 2b
· 0e2a73b0
Felix Lena
a rédigé
Il y a 10 mois
et
Elunias
a validé
Il y a 10 mois
0e2a73b0
update README et cli.py
· 6b60ba4e
Felix Lena
a rédigé
Il y a 10 mois
et
Elunias
a validé
Il y a 10 mois
6b60ba4e
Rename file + fix class name
· f69e5af4
Your Name
a rédigé
Il y a 10 mois
f69e5af4
Masquer les modifications d'espaces
En ligne
Côte à côte
Affichage de
4 fichiers modifiés
.gitlab-ci.yml
+5
-0
5 ajouts, 0 suppression
.gitlab-ci.yml
Attrap_pref2b.py
+94
-0
94 ajouts, 0 suppression
Attrap_pref2b.py
README.md
+1
-0
1 ajout, 0 suppression
README.md
cli.py
+1
-0
1 ajout, 0 suppression
cli.py
avec
101 ajouts
et
0 suppression
.gitlab-ci.yml
Voir le fichier @
f69e5af4
...
@@ -98,6 +98,11 @@ test_ppparis:
...
@@ -98,6 +98,11 @@ test_ppparis:
PREF
:
"
ppparis"
PREF
:
"
ppparis"
extends
:
.default_pref
extends
:
.default_pref
test_pref2b
:
variables
:
PREF
:
"
pref2b"
extends
:
.default_pref
test_pref04
:
test_pref04
:
variables
:
variables
:
PREF
:
"
pref04"
PREF
:
"
pref04"
...
...
Ce diff est replié.
Cliquez pour l'agrandir.
Attrap_pref2b.py
0 → 100644
Voir le fichier @
f69e5af4
import
os
import
datetime
from
bs4
import
BeautifulSoup
from
urllib.parse
import
unquote
from
Attrap
import
Attrap
class
Attrap_pref2b
(
Attrap
):
# Config
__HOST
=
'
https://www.haute-corse.gouv.fr
'
__RAA_PAGE
=
{
'
2024
'
:
f
'
{
__HOST
}
/Publications/Publications-administratives-et-legales/Recueils-des-actes-administratifs/Recueils-des-actes-administratifs-2024
'
,
'
2023
'
:
f
'
{
__HOST
}
/Publications/Publications-administratives-et-legales/Recueils-des-actes-administratifs/Recueils-des-actes-administratifs-2023
'
,
'
2022
'
:
f
'
{
__HOST
}
/Publications/Publications-administratives-et-legales/Recueils-des-actes-administratifs/Recueils-des-actes-administratifs-2016-a-2022/Recueils-des-actes-administratifs-2022
'
,
'
2021
'
:
f
'
{
__HOST
}
/Publications/Publications-administratives-et-legales/Recueils-des-actes-administratifs/Recueils-des-actes-administratifs-2016-a-2022/Recueils-des-actes-administratifs-2021
'
,
'
2020
'
:
f
'
{
__HOST
}
/Publications/Publications-administratives-et-legales/Recueils-des-actes-administratifs/Recueils-des-actes-administratifs-2016-a-2022/Recueils-des-actes-administratifs-2020
'
,
'
2019
'
:
f
'
{
__HOST
}
/Publications/Publications-administratives-et-legales/Recueils-des-actes-administratifs/Recueils-des-actes-administratifs-2016-a-2022/Recueils-des-actes-administratifs-2019
'
}
__USER_AGENT
=
'
Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0
'
full_name
=
'
Préfecture de Haute-Corse
'
short_code
=
'
pref2b
'
def
__init__
(
self
,
data_dir
):
super
().
__init__
(
data_dir
,
self
.
__USER_AGENT
)
self
.
enable_tor
(
10
)
def
get_raa
(
self
,
keywords
):
pages_to_parse
=
[]
if
self
.
not_before
.
year
<=
2024
:
pages_to_parse
.
append
(
self
.
__RAA_PAGE
[
'
2024
'
])
if
self
.
not_before
.
year
<=
2023
:
pages_to_parse
.
append
(
self
.
__RAA_PAGE
[
'
2023
'
])
if
self
.
not_before
.
year
<=
2022
:
pages_to_parse
.
append
(
self
.
__RAA_PAGE
[
'
2022
'
])
if
self
.
not_before
.
year
<=
2021
:
pages_to_parse
.
append
(
self
.
__RAA_PAGE
[
'
2021
'
])
if
self
.
not_before
.
year
<=
2020
:
pages_to_parse
.
append
(
self
.
__RAA_PAGE
[
'
2020
'
])
if
self
.
not_before
.
year
<=
2019
:
pages_to_parse
.
append
(
self
.
__RAA_PAGE
[
'
2019
'
])
sub_pages_to_parse
=
[]
# Pour chaque année, on cherche les sous-pages de mois
for
raa_page
in
pages_to_parse
:
sub_pages_to_parse
.
append
(
raa_page
)
page_content
=
self
.
get_page
(
raa_page
,
'
get
'
).
content
month_pages
=
self
.
get_sub_pages
(
page_content
,
'
.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
'
,
self
.
__HOST
,
False
)[::
-
1
]
for
month_page
in
month_pages
:
sub_pages_to_parse
.
append
(
month_page
[
'
url
'
])
print
(
"
sub_pages_to_parse
"
,
sub_pages_to_parse
)
# On parse les pages contenant des RAA
elements
=
self
.
get_raa_with_pager
(
sub_pages_to_parse
[::
-
1
],
'
.fr-pagination__link.fr-pagination__link--next
'
,
self
.
__HOST
)
self
.
parse_raa
(
elements
,
keywords
)
self
.
mailer
()
def
get_raa_elements
(
self
,
page_content
):
elements
=
[]
# On charge le parser
soup
=
BeautifulSoup
(
page_content
,
'
html.parser
'
)
# On récupère chaque section contenant un RAA
cards
=
soup
.
select
(
'
div.fr-card__body div.fr-card__content h2.fr-card__title a.fr-card__link.menu-item-link
'
)
for
a
in
cards
:
if
a
.
get
(
'
href
'
)
and
a
[
'
href
'
].
endswith
(
'
.pdf
'
):
if
a
[
'
href
'
].
startswith
(
'
/
'
):
url
=
f
"
{
self
.
__HOST
}{
a
[
'
href
'
]
}
"
else
:
url
=
a
[
'
href
'
]
url
=
unquote
(
url
)
name
=
a
.
get_text
().
strip
()
date
=
datetime
.
datetime
.
strptime
(
a
[
'
title
'
].
split
(
'
-
'
)[
-
1
].
strip
(),
'
%d/%m/%Y
'
)
raa
=
Attrap
.
RAA
(
url
,
date
,
name
)
elements
.
append
(
raa
)
return
elements
Ce diff est replié.
Cliquez pour l'agrandir.
README.md
Voir le fichier @
f69e5af4
...
@@ -63,6 +63,7 @@ Les options suivantes peuvent être précisées, par un paramètre si l'utilitai
...
@@ -63,6 +63,7 @@ Les options suivantes peuvent être précisées, par un paramètre si l'utilitai
## Administrations supportées
## Administrations supportées
-
Préfecture de police de Paris (identifiant :
`ppparis`
)
-
Préfecture de police de Paris (identifiant :
`ppparis`
)
-
Préfecture de Haute-Corse (identifiant :
`pref2b`
)
-
Préfecture des Alpes-de-Haute-Provence (identifiant :
`pref04`
)
-
Préfecture des Alpes-de-Haute-Provence (identifiant :
`pref04`
)
-
Préfecture des Hautes-Alpes (identifiant :
`pref05`
)
-
Préfecture des Hautes-Alpes (identifiant :
`pref05`
)
-
Préfecture des Alpes-Maritimes (identifiant :
`pref06`
)
-
Préfecture des Alpes-Maritimes (identifiant :
`pref06`
)
...
...
Ce diff est replié.
Cliquez pour l'agrandir.
cli.py
Voir le fichier @
f69e5af4
...
@@ -40,6 +40,7 @@ __MASTODON_INSTANCE = os.getenv('MASTODON_INSTANCE')
...
@@ -40,6 +40,7 @@ __MASTODON_INSTANCE = os.getenv('MASTODON_INSTANCE')
# Liste des administrations supportées
# Liste des administrations supportées
available_administrations
=
[
available_administrations
=
[
'
ppparis
'
,
'
ppparis
'
,
'
pref2b
'
,
'
pref04
'
,
'
pref04
'
,
'
pref05
'
,
'
pref05
'
,
'
pref06
'
,
'
pref06
'
,
...
...
Ce diff est replié.
Cliquez pour l'agrandir.