CommencerCommencer gratuitement

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

De nombreuses 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 indique : « Pour authentifier les appels d’API avec la clé d’API, définissez la valeur de l’en-tête HTTP Authorization sur Bearer api_key. »

Vous allez créer un dictionnaire pour transmettre cette information à get(), appeler l’API pour obtenir les cafés les mieux notés à New York, puis analyser la réponse.

pandas (sous le nom 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.

Cet exercice fait partie du cours

Ingestion de données simplifiée avec pandas

Afficher le cours

Instructions

  • 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 nécessaires. 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 le dataframe cafes et affichez la colonne names.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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