Merge branch '1-plus-infos-dans-fichier-sortie' into 'master'
Resolve "Plus d'informations sur les personnes trouvées" Closes #1 See merge request sdjgeek/purge-registres-deces-insee!1
This commit is contained in:
commit
60f3ac75b8
|
@ -6,5 +6,6 @@ __pycache__/
|
||||||
# Environments
|
# Environments
|
||||||
localenv
|
localenv
|
||||||
|
|
||||||
# Temporary files
|
# Editors and IDE
|
||||||
*~
|
*~
|
||||||
|
.idea
|
|
@ -40,6 +40,10 @@ Version : 1.0
|
||||||
|
|
||||||
Journal des versions
|
Journal des versions
|
||||||
|
|
||||||
|
v2.0 (2020/)
|
||||||
|
Le fichier de sortie contient plus d'informations pour faciliter la
|
||||||
|
comparaison
|
||||||
|
|
||||||
v1.0 (2020/05/16)
|
v1.0 (2020/05/16)
|
||||||
Première publication
|
Première publication
|
||||||
|
|
||||||
|
@ -68,15 +72,6 @@ import os
|
||||||
import peewee
|
import peewee
|
||||||
import requests
|
import requests
|
||||||
|
|
||||||
##
|
|
||||||
# Texte inscrit dans le fichier de sortie
|
|
||||||
output_template = """
|
|
||||||
{full_name} dans nos registres
|
|
||||||
{last_name}, {first_name} dans la liste des décés
|
|
||||||
né{feminin} le {jour_naissance:0>2}/{mois_naissance:0>2}/{annee_naissance:0>4}
|
|
||||||
décédé{feminin} le {jour_deces:0>2}/{mois_deces:0>2}/{annee_deces:0>4}
|
|
||||||
"""
|
|
||||||
|
|
||||||
###
|
###
|
||||||
# Base de donnée INSEE
|
# Base de donnée INSEE
|
||||||
database = peewee.SqliteDatabase(chemin_base_donnees)
|
database = peewee.SqliteDatabase(chemin_base_donnees)
|
||||||
|
@ -146,46 +141,53 @@ def get_member_profile(member_id, cookie):
|
||||||
for unite in numeros_unites:
|
for unite in numeros_unites:
|
||||||
print(f"Unité {unite}")
|
print(f"Unité {unite}")
|
||||||
# Récupérer la liste des membres
|
# Récupérer la liste des membres
|
||||||
members = get_member_list(111848, cookie=cookie)
|
members = get_member_list(unite, cookie=cookie)
|
||||||
|
|
||||||
# Préparer le fichier de sortie
|
# Préparer le fichier de sortie
|
||||||
output_file = os.path.join(chemin_repertoire_sortie, f"liste_membres_decedes_unite_{unite}.txt")
|
output_file = os.path.join(chemin_repertoire_sortie, f"liste_membres_decedes_unite_{unite}.txt")
|
||||||
with open(output_file, 'w') as out_file:
|
with open(output_file, 'w') as out_file:
|
||||||
|
out_file.write("Les lieux dans le fichier de l'INSEE sont donnés en Code Officiel Géographique en vigueur au moment de la prise en compte du décès\n")
|
||||||
# Boucler sur la liste des membres
|
# Boucler sur la liste des membres
|
||||||
for member in members:
|
for member in members:
|
||||||
# Lire les noms et date de naissance
|
# Lire les noms et date de naissance
|
||||||
full_name = member['nameListPreferredLocal']
|
name_registre = member['nameListPreferredLocal']
|
||||||
full_birthdate = member['birth']['date']['date']
|
full_birthdate = member['birth']['date']['date']
|
||||||
maiden_name = None
|
maiden_name = None
|
||||||
|
ville_registre = None
|
||||||
# S'il s'agit d'une femme mariée, trouver son nom de jeune fille
|
# S'il s'agit d'une femme mariée, trouver son nom de jeune fille
|
||||||
if member['isSpouse']:
|
if member['isSpouse']:
|
||||||
member_profile = get_member_profile(member['legacyCmisId'], cookie=cookie)
|
member_profile = get_member_profile(member['legacyCmisId'], cookie=cookie)
|
||||||
maiden_name = member_profile['individual']['maidenNameGroup']['name1']['family']
|
maiden_name = member_profile['individual']['maidenNameGroup']['name1']['family']
|
||||||
|
ville_registre = member_profile['individual']['birthPlace']
|
||||||
try:
|
try:
|
||||||
last_name, first_name = full_name.split(',')
|
last_name, first_name = name_registre.split(',')
|
||||||
annee_naissance, mois_naissance, jour_naissance = full_birthdate.split('-')
|
annee_registre, mois_registre, jour_registre = full_birthdate.split('-')
|
||||||
except ValueError:
|
except ValueError:
|
||||||
print(f"Error with member [{full_name}, {full_birthdate}]")
|
print(f"Error with member [{name_registre}, {full_birthdate}]")
|
||||||
continue
|
continue
|
||||||
first_name = first_name.strip().split(' ')[0]
|
first_name = first_name.strip().split(' ')[0]
|
||||||
last_name = last_name.strip().split(' ')[0]
|
last_name = last_name.strip().split(' ')[0]
|
||||||
query = find_person(first_name, last_name, maiden_name, annee_naissance, mois_naissance, jour_naissance)
|
query = find_person(first_name, last_name, maiden_name, annee_registre, mois_registre, jour_registre)
|
||||||
|
name_registre = name_registre.upper()
|
||||||
if maiden_name:
|
if maiden_name:
|
||||||
full_name = f"{full_name} née {maiden_name}"
|
name_registre = f"{name_registre} née {maiden_name.upper()}"
|
||||||
if member['sex'] == "F":
|
if member['sex'] == "F":
|
||||||
feminin = "e"
|
feminin = "e"
|
||||||
else:
|
else:
|
||||||
feminin = ""
|
feminin = ""
|
||||||
for person in query:
|
for person in query:
|
||||||
text = output_template.format(full_name=full_name,
|
if not ville_registre:
|
||||||
last_name=person.last_name.capitalize(),
|
member_profile = get_member_profile(member['legacyCmisId'], cookie=cookie)
|
||||||
first_name=person.first_name.capitalize(),
|
ville_registre = member_profile['individual']['birthPlace']
|
||||||
jour_naissance=person.jour_naissance,
|
if not ville_registre:
|
||||||
mois_naissance=person.mois_naissance,
|
ville_registre = "<VIDE>"
|
||||||
annee_naissance=person.annee_naissance,
|
text = f"""
|
||||||
jour_deces=person.jour_deces,
|
Le membre {name_registre},
|
||||||
mois_deces=person.mois_deces,
|
né{feminin} le {jour_registre:0>2}/{mois_registre:0>2}/{annee_registre:0>4} à {ville_registre.upper()}
|
||||||
annee_deces=person.annee_deces,
|
semble être décédé{feminin}.
|
||||||
feminin=feminin)
|
Dans le fichier de l'INSEE on peut trouver {person.last_name}, {person.first_name}
|
||||||
|
né{feminin} le {person.jour_naissance:0>2}/{person.mois_naissance:0>2}/{person.annee_naissance:0>4} à {person.code_lieu_naissance}
|
||||||
|
décédé{feminin} le {person.jour_deces:0>2}/{person.mois_deces:0>2}/{person.annee_deces:0>4} à {person.code_lieu_deces}
|
||||||
|
"""
|
||||||
print(text)
|
print(text)
|
||||||
out_file.write(text)
|
out_file.write(text)
|
||||||
|
|
Loading…
Reference in New Issue