release 7.0

This commit is contained in:
Sdj Geek 2020-08-04 08:46:04 +02:00
parent cfdab63598
commit bb709eb2c1
2 changed files with 14 additions and 0 deletions

View File

@ -1,5 +1,8 @@
# Changelog # Changelog
### [v7.0] 2020-08-04
- Convertit les Codes Officiels Géographiques en nom de commune.
### [v6.1] 2020-07-30 ### [v6.1] 2020-07-30
- BUG: Lorsque maiden_name est None, ne pas essayer de le strip - BUG: Lorsque maiden_name est None, ne pas essayer de le strip

View File

@ -10,18 +10,29 @@ import requests
def get_ville_from_cog(cog): def get_ville_from_cog(cog):
"""
Donne le nom de la commune (et son code postal) correspondant au code officiel géographique (cog) donné en entrée.
:param cog: le code officiel géographique à convertie
:return: le nom de la commune (et son code postal). None si la recherche a échoué.
"""
# Contacter l'API
r = requests.get("https://public.opendatasoft.com/api/records/1.0/search/", r = requests.get("https://public.opendatasoft.com/api/records/1.0/search/",
params={'dataset': "correspondance-code-insee-code-postal", params={'dataset': "correspondance-code-insee-code-postal",
'q': f"insee_com={cog}", 'q': f"insee_com={cog}",
'lang': "fr"}, 'lang': "fr"},
headers={'Accept': "application/json"}) headers={'Accept': "application/json"})
# Tester la validité de la réponse
try: try:
r.raise_for_status() r.raise_for_status()
except requests.HTTPError: except requests.HTTPError:
print(f"Warning get_ville_from_cog: requests return status {r.headers}") print(f"Warning get_ville_from_cog: requests return status {r.headers}")
return None return None
# Récupérer le résultat
result = r.json() result = r.json()
# Si résultat non vide
if result['nhits'] > 0: if result['nhits'] > 0:
# COMMUNE (CODE POSTAL)
return f"{result['records'][0]['fields']['nom_comm']} ({result['records'][0]['fields']['postal_code']})" return f"{result['records'][0]['fields']['nom_comm']} ({result['records'][0]['fields']['postal_code']})"
print(f"Warning get_ville_from_cog: no result returned for cog {cog}") print(f"Warning get_ville_from_cog: no result returned for cog {cog}")
return None return None