Ustawianie nagłówków żądania
Wiele API wymaga, aby użytkownicy podali klucz API uzyskany podczas rejestracji w danym serwisie. Klucze zazwyczaj są przekazywane w nagłówku żądania, a nie jako parametry.
Dokumentacja Yelp API mówi: "Aby uwierzytelnić wywołania API za pomocą klucza API, ustaw wartość nagłówka HTTP Authorization jako Bearer api_key."
Skonfigurujesz słownik do przekazania tych informacji do get(), wywołasz API dla najwyżej ocenianych kawiarni w Nowym Jorku i przetworzy uzyskaną odpowiedź.
pandas (jako pd) i requests zostały już załadowane. Endpoint API jest przechowywany jako api_url, a klucz jako api_key. Parametry znajdują się w słowniku params.
To ćwiczenie jest częścią kursu
Sprawne importowanie danych z pandas
Instrukcje do ćwiczenia
- Utwórz słownik
headers, który przekazuje sformatowany ciąg klucza do wartości nagłówka"Authorization". - Odpytaj Yelp API (
api_url) za pomocąget()z odpowiednimi nagłówkami i parametrami. Zapisz wynik jakoresponse. - Wyodrębnij dane JSON z
response. Zapisz wynik jakodata. - Załaduj wartości
"businesses"zdatado ramki danychcafesi wyświetl kolumnęnames.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)