Request-Header setzen
Viele APIs verlangen, dass Nutzer einen API-Schlüssel angeben, den sie durch die Registrierung für den Dienst erhalten. Schlüssel werden in der Regel im Request-Header und nicht als Parameter übermittelt.
Die Yelp API-Dokumentation sagt: „Um API-Aufrufe mit dem API-Schlüssel zu authentifizieren, setze den Wert des HTTP-Headers Authorization auf Bearer api_key."
Du richtest ein Dictionary ein, um diese Information an get() zu übergeben, rufst die API für die bestbewerteten Cafés in NYC auf und analysierst die Antwort.
pandas (als pd) und requests sind geladen. Der API-Endpunkt ist in api_url gespeichert, der Schlüssel in api_key. Die Parameter stehen im Dictionary params.
Diese Übung ist Teil des Kurses
Vereinfachte Datenaufnahme mit pandas
Anleitung zur Übung
- Erstelle ein Dictionary
headers, das den formatierten Schlüssel-String dem Header-Wert"Authorization"übergibt. - Frage die Yelp API (
api_url) mitget()sowie den erforderlichen Headern und Parametern ab. Speichere das Ergebnis alsresponse. - Extrahiere die JSON-Daten aus
response. Speichere das Ergebnis alsdata. - Lade die
"businesses"-Werte indatain das DataFramecafesund gib die Spaltenamesaus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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)