1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Giới thiệu về API trong Python

Connected

Bài tập

Tôn trọng giới hạn tốc độ của API

Hãy áp dụng những gì bạn đã học về xử lý lỗi. Trong bài này, bạn sẽ gặp lỗi rate-limit, nghĩa là bạn đang gửi quá nhiều yêu cầu đến máy chủ trong một khoảng thời gian ngắn. Hãy khắc phục bằng cách triển khai một giải pháp tạm để vượt qua giới hạn tốc độ, giúp script không bị lỗi.

Thư viện nhạc của bạn có hơn 3500 bản nhạc, nên hãy thử tìm bản dài nhất bằng cách kiểm tra thuộc tính Length của từng bản.

Nhưng có một vấn đề: API /tracks có kích thước trang tối đa là 500 mục và giới hạn tốc độ là 1 yêu cầu mỗi giây. Script hiện tại của chúng ta đang gửi quá nhiều yêu cầu đến máy chủ trong thời gian ngắn. Hãy sửa nó!

Các gói requests và time đã được nhập sẵn, và chúng tôi đã tạo sẵn cho bạn các biến sau:

longestTrackLength = 0
longestTrackTitle = ""
headers = {'Authorization': 'Bearer 8apDFHaNJMxy8Kt818aa6b4a0ed0514b5d3'}
page_number = 1

Hướng dẫn

100 XP
  • Hãy chạy bài tập trước mà không thay đổi mã, bạn sẽ thấy console hiển thị 429 Client Error, cho biết chúng ta đang gửi quá nhiều yêu cầu đến máy chủ trong thời gian ngắn.
  • Sửa script bằng cách thêm khoảng dừng 3 giây ở cuối vòng lặp while, sử dụng phương thức sleep từ gói time.