Préparation de l'analyse de résultats
This commit is contained in:
@ -118,14 +118,17 @@ def importer_listes(engine: Engine) -> None:
|
||||
liste.nuance_id = liste_dict["nuance_id"]
|
||||
liste.bloc_id = liste_dict["bloc_id"]
|
||||
else:
|
||||
session.add(Liste(**liste_dict))
|
||||
liste = Liste(numero=liste_dict['numero'], nom=liste_dict['nom'],
|
||||
nom_majuscules=liste_dict['nom'].upper(), nuance_id=liste_dict['nuance_id'],
|
||||
bloc_id=liste_dict['bloc_id'])
|
||||
session.add(liste)
|
||||
|
||||
session.commit()
|
||||
|
||||
|
||||
def importer_candidats(engine: Engine) -> None:
|
||||
DATASET_URL = "https://www.data.gouv.fr/fr/datasets/r/483cd4bd-1b0e-4b52-a923-aadadf9c8f62"
|
||||
file = get_file(DATASET_URL, "candidats_2024-{etag}.csv")
|
||||
file = get_file(DATASET_URL, "candidats_2024.csv")
|
||||
|
||||
with file.open('r') as f:
|
||||
with Session(engine) as session:
|
||||
@ -134,6 +137,7 @@ def importer_candidats(engine: Engine) -> None:
|
||||
line: dict[str, str]
|
||||
numero_panneau = line.get("Numéro de panneau")
|
||||
liste = session.execute(select(Liste).filter_by(numero=numero_panneau)).scalar_one()
|
||||
liste.nom_majuscules = line['Libellé de la liste']
|
||||
|
||||
if candidat := session.execute(select(Candidat).filter_by(liste_id=liste.id, ordre=line['Ordre'])) \
|
||||
.scalar_one_or_none():
|
||||
|
Reference in New Issue
Block a user