Lấy dữ liệu từ một API
Trong bài tập này, bạn sẽ dùng requests.get() để truy vấn Yelp Business Search API lấy danh sách quán cà phê ở New York City. requests.get() cần một URL để lấy dữ liệu. Yelp API cũng cần các tham số tìm kiếm và header ủy quyền được truyền lần lượt vào các đối số từ khóa params và headers.
Bạn sẽ cần trích xuất dữ liệu từ phản hồi bằng phương thức json() của nó, rồi truyền dữ liệu đó vào hàm DataFrame() của pandas để tạo một dataframe. Lưu ý dữ liệu cần thiết nằm dưới khóa dictionary "businesses".
pandas (viết tắt là pd) và requests đã được nạp. Dữ liệu ủy quyền nằm trong dictionary headers, và các tham số API cần thiết được lưu trong params.
Bài tập này là một phần của khóa học
Nạp dữ liệu gọn nhẹ với pandas
Hướng dẫn bài tập
- Lấy dữ liệu về các quán cà phê ở New York City từ Yelp API (
api_url) bằngrequests.get(). Thông tinparamsvàheaderscần thiết đã được cung cấp. - Trích xuất dữ liệu JSON từ phản hồi bằng phương thức
json()và gán vàodata. - Nạp danh sách quán cà phê vào dataframe
cafesbằng hàmDataFrame()củapandas. Các mục danh sách nằm dưới khóa"businesses"trongdata. - In
dtypescủa dataframe để xem bạn đang nhận được những thông tin gì.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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)