1. Nauka
  2. /
  3. Kursy
  4. /
  5. Wprowadzenie do API w Pythonie

Connected

ćwiczenie

Szanowanie limitów zapytań API

Sprawdźmy w praktyce to, czego się nauczyliśmy o obsłudze błędów. W tym ćwiczeniu napotkasz błąd limitu zapytań – oznacza to, że w krótkim czasie wysyłasz zbyt wiele żądań do serwera. Naprawmy to, wprowadzając rozwiązanie, które pozwoli ominąć ten limit i zapobiegnie awarii skryptu.

Twoja biblioteka muzyczna zawiera ponad 3500 utworów – spróbujmy znaleźć najdłuższy z nich, sprawdzając właściwość Length każdego utworu.

Jest jednak pewien problem: API /tracks ma maksymalny rozmiar strony wynoszący 500 elementów oraz limit 1 żądania na sekundę. Nasz skrypt wysyła zbyt wiele żądań w zbyt krótkim czasie. Czas to naprawić!

Pakiety requests i time są już zaimportowane, a poniższe zmienne zostały utworzone za ciebie:

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

Instrukcje

100 XP
  • Zacznij od uruchomienia ćwiczenia bez wprowadzania żadnych zmian w kodzie – w konsoli pojawi się błąd 429 Client Error, który informuje, że wysyłamy zbyt wiele żądań do serwera w zbyt krótkim czasie.
  • Napraw skrypt, dodając 3-sekundową pauzę na końcu pętli while – użyj metody sleep z pakietu time.