1. Learn
  2. /
  3. Courses
  4. /
  5. Úvod do API v Pythonu

Connected

Exercise

Respektování rate limitů API

Pojďme si vyzkoušet, co jsme se naučili o zpracování chyb. V tomto cvičení narazíš na chybu rate limitu, která znamená, že posíláš na server příliš mnoho požadavků za krátkou dobu. Opravíme to přidáním workaroundu, který rate limit obejde a zabrání pádu skriptu.

Tvoje hudební knihovna obsahuje přes 3 500 skladeb – zkusíme najít tu nejdelší tím, že u každé skladby zkontrolujeme vlastnost Length.

Je tu ale jeden problém: API /tracks má maximální velikost stránky 500 položek a rate limit 1 požadavek za sekundu. Skript, který jsme napsali, posílá na server příliš mnoho požadavků za krátkou dobu. Pojďme to napravit!

Balíčky requests a time jsou už naimportované a připravili jsme pro tebe následující proměnné:

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

Instructions

100 XP
  • Nejdřív spusť cvičení beze změn v kódu – všimneš si, že konzole zobrazí chybu 429 Client Error, která říká, že posíláme na server příliš mnoho požadavků za krátkou dobu.
  • Oprav skript tak, že na konec while-smyčky přidáš pauzu 3 sekundy pomocí metody sleep z balíčku time.