Ottieni dati da un'API
In questo esercizio userai requests.get() per interrogare la Yelp Business Search API alla ricerca di caffetterie a New York City. requests.get() ha bisogno di un URL da cui recuperare i dati. La Yelp API richiede anche dei parametri di ricerca e le intestazioni di autorizzazione da passare rispettivamente agli argomenti con parola chiave params e headers.
Dovrai estrarre i dati dalla risposta con il suo metodo json() e passarli alla funzione DataFrame() di pandas per creare un dataframe. Nota che i dati necessari si trovano sotto la chiave del dizionario "businesses".
pandas (come pd) e requests sono già stati importati. I dati di autorizzazione sono nel dizionario headers e i parametri necessari per l'API sono memorizzati in params.
Questo esercizio fa parte del corso
Acquisizione dati semplificata con pandas
Istruzioni dell'esercizio
- Ottieni i dati sulle caffetterie di New York City dalla Yelp API (
api_url) conrequests.get(). Le informazioni necessarie inparamseheaderssono già fornite. - Estrai i dati JSON dalla risposta con il metodo
json()e assegnali adata. - Carica gli annunci delle caffetterie nel dataframe
cafescon la funzioneDataFrame()dipandas. Gli annunci si trovano sotto la chiave"businesses"indata. - Stampa i
dtypesdel dataframe per vedere quali informazioni stai ottenendo.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
api_url = "https://api.yelp.com/v3/businesses/search"
# Get data about NYC cafes from the Yelp API
response = ____(____,
headers=headers,
params=params)
# Extract JSON data from the response
data = response.____
# Load data to a dataframe
cafes = ____(____)
# View the data's dtypes
print(cafes.dtypes)