요청 헤더 설정하기
많은 API는 서비스를 등록한 뒤 발급받는 API 키를 요구합니다. 키는 보통 파라미터가 아닌 요청 헤더에 포함해 전달합니다.
Yelp API 문서에는 "API Key로 API 호출을 인증하려면, Authorization HTTP 헤더 값을 Bearer api_key로 설정하세요."라고 되어 있습니다.
이 정보를 get()에 전달할 딕셔너리를 만들고, 뉴욕시에서 평점이 가장 높은 카페를 조회한 뒤, 응답을 파싱해 보세요.
pandas(별칭 pd)와 requests는 이미 불러와져 있습니다. API 엔드포인트는 api_url, 키는 api_key에 저장되어 있고, 파라미터는 딕셔너리 params에 들어 있습니다.
이 연습은 강의의 일부입니다
pandas로 빠르고 간편한 데이터 적재
연습 안내
- 서식화한 키 문자열을
"Authorization"헤더 값으로 전달하는 딕셔너리headers를 만드세요. - 필요한 헤더와 파라미터를 포함해
get()으로 Yelp API(api_url)를 호출하고 결과를response로 저장하세요. response에서 JSON 데이터를 추출해data로 저장하세요.data의"businesses"값을 데이터프레임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)