CommencezCommencez gratuitement

Définir les en-têtes de la requête

Beaucoup d'API exigent que les utilisateurs fournissent une clé d'API, obtenue en s'inscrivant au service. Les clés sont généralement transmises dans l'en-tête de la requête plutôt que comme paramètres.

La documentation de l'API Yelp précise : « Pour authentifier les appels à l'API avec la clé d'API, définissez la valeur de l'en-tête HTTP Authorization à Bearer api_key. »

Vous allez configurer un dictionnaire pour transmettre cette information à get(), appeler l'API pour obtenir les cafés les mieux cotés à New York et analyser la réponse.

pandas (comme pd) et requests ont été chargés. Le point de terminaison de l'API est stocké dans api_url, et la clé dans api_key. Les paramètres se trouvent dans le dictionnaire params.

Cette activité fait partie du cours

Ingestion de données rationalisée avec pandas

Voir le cours

Instructions de l’exercice

  • Créez un dictionnaire headers qui transmet la chaîne de clé formatée à la valeur de l'en-tête "Authorization".
  • Interrogez l'API Yelp (api_url) avec get() et les en-têtes et paramètres requis. Enregistrez le résultat dans response.
  • Extrayez les données JSON de response. Enregistrez le résultat dans data.
  • Chargez les valeurs "businesses" de data dans la trame de données cafes et affichez la colonne names.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Create dictionary that passes Authorization and key string
headers = {____: "Bearer {}".format(____)}

# Query the Yelp API with headers and params set
response = ____



# Extract JSON data from response
data = ____

# Load "businesses" values to a dataframe and print names
cafes = ____
print(cafes.name)
Modifier et exécuter le code