1. Learn
  2. /
  3. 课程
  4. /
  5. Python 中的 API 入门

Connected

道练习

遵守 API 速率限制

让我们把关于错误处理的所学用起来。在本练习中,您会遇到一个「速率限制错误」(rate-limit error),这表示您在短时间内向服务器发送了过多请求。我们将通过实现一种权宜做法绕过速率限制,避免脚本失败。

您的音乐库包含超过 3500 首曲目。我们来通过检查每首曲目的 Length 属性,找出时长最长的曲目。

不过有个问题,/tracks API 的最大分页大小为 500 项,并且速率限制为每秒 1 个请求。我们编写的脚本在短时间内向服务器发送了太多请求。让我们来修复它!

requests 和 time 包已导入,并且我们已为您创建了以下变量:

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

说明

100 XP
  • 首先在不修改代码的情况下运行本练习。您会注意到控制台输出 429 Client Error,这表明我们在短时间内向服务器发送了过多请求。
  • 通过在 while 循环末尾使用 time 包的 sleep 方法添加「暂停 3 秒」,来修复脚本。