Configura las cabeceras de la solicitud
Muchas APIs requieren que los usuarios proporcionen una clave de API, que se obtiene registrándose en el servicio. Normalmente, las claves se envían en la cabecera de la solicitud, no como parámetros.
La documentación de la API de Yelp indica: "Para autenticar las llamadas a la API con la clave, establece el valor de la cabecera HTTP Authorization como Bearer api_key."
Vas a crear un diccionario para pasar esta información a get(), llamar a la API para obtener las cafeterías mejor valoradas de NYC y analizar la respuesta.
Se han cargado pandas (como pd) y requests. El endpoint de la API está guardado como api_url, y la clave como api_key. Los parámetros están en el diccionario params.
Este ejercicio forma parte del curso
Ingesta de datos eficiente con pandas
Instrucciones del ejercicio
- Crea un diccionario,
headers, que pase la cadena de clave formateada como valor de la cabecera"Authorization". - Consulta la API de Yelp (
api_url) conget()y las cabeceras y parámetros necesarios. Guarda el resultado comoresponse. - Extrae los datos JSON de
response. Guarda el resultado comodata. - Carga los valores de
"businesses"endataen el dataframecafese imprime la columnanames.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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)