API web

Vous pouvez vous rendre l'adresse : https://geo.api.gouv.fr/adresse

In [ ]:
import requests # bibliothèque pour formuler notre requête, à installer si besoin
In [ ]:
# Une url avec une erreur 404 : ressource non trouvée
url1="https://www.education.gouv.fr/test"
rep1=requests.get(url1)
rep1
In [ ]:
# Une url avec une erreur 200 : ressource trouvée, résultat envoyé

url2="https://api-adresse.data.gouv.fr/search/?q=8+bd+du+port&limit=15" # Cette adresse est dispoinle sur le site
rep2=requests.get(url2)
rep2
In [ ]:
rep2.json() # Observer la structure en dictionnaires

Une recherche d'information

But : faire des requêtes à partir d'API disponibles sur le web. Trouver le format des donnés échangées. Trouver les outils qui permettent d'extraire les informations.

Une recherche par code postale

In [ ]:
url7="https://geo.api.gouv.fr/communes?codePostal=52100"
rep7=requests.get(url7)
data=rep7.json()

print(data)
# Observer le format de réponse. Comment faire pour connaître le type de data
# Trouver le code de Saint-Dizier
In [ ]:
for reponse in data : 
    
    if reponse["nom"]=="Saint-Dizier":
        print(reponse["code"])

Exercice : trouver le code qui correspond à votre commune (ou une autre)

Une autre recherche

Recherchons dans le dictionnaire de réponse, le nom de la rue. Nous allons utilisé des méthodes vues en première sur l'utilisation des dictionnaires. Faire une recherche par la lattitude et la longitude. Trouver le nom de la rue.

In [ ]:
url3="https://api-adresse.data.gouv.fr/reverse/?lon=2.37&lat=48.357&type=street"
rep3=requests.get(url3)
print(rep3)
In [ ]:
data=rep3.json() # Observer le format de réponse. Comment faire pour connaître le type de data
rep3.json().items()  # Faire une recherche sur le cours de première
In [ ]:
rep3.json()['features'][0]
In [ ]:
rep3.json()['features'][0]['properties']
In [ ]:
rep3.json()['features'][0]['properties']['name']

Exercice : faire la même recherche à partir des coordonnées GPS (logitude et lattitude) de votre rue.

Une autre API

Vous pouvez vous rendre sur :https://geodatamine.fr/doc/

In [ ]:
url4="https://geodatamine.fr/themes"
rep4=requests.get(url4)
data=rep4.json()
In [ ]:
data

Exercice : trouver l'ID qui correspond au "Covoiturage"

In [ ]:
 
In [ ]: