Задати заголовки запиту
Багато API вимагають, щоб користувачі надавали ключ API, отриманий після реєстрації сервісу. Зазвичай ключі передають у заголовку запиту, а не як параметри.
У документації Yelp API зазначено: «Щоб автентифікувати виклики API за допомогою ключа API, встановіть значення HTTP-заголовка Authorization як Bearer api_key.»
Ви створите словник, щоб передати цю інформацію в get(), звернетеся до API по найвище оцінені кафе в Нью-Йорку та розберете відповідь.
pandas (як pd) і requests вже імпортовано. Кінцева точка API збережена в api_url, а ключ — у api_key. Параметри містяться у словнику params.
Ця вправа є частиною курсу
Оптимізоване завантаження даних із pandas
Інструкції до вправи
- Створіть словник
headers, який передає відформатований рядок ключа в значення заголовка"Authorization". - Зробіть запит до Yelp API (
api_url) за допомогоюget()з потрібними заголовками та параметрами. Збережіть результат уresponse. - Витягніть JSON-дані з
response. Збережіть результат уdata. - Завантажте значення
"businesses"зdataу датафреймcafesі виведіть стовпецьnames.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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)