MC, 2025
Ilustracja do artykułu: Jak używać requests py w Pythonie? Praktyczne przykłady!

Jak używać requests py w Pythonie? Praktyczne przykłady!

Witaj w świecie Pythona, gdzie wszystko jest możliwe! Dzisiaj porozmawiamy o jednej z najpopularniejszych bibliotek – requests py. Ta biblioteka jest absolutnym must-have dla każdego programisty, który chce w łatwy sposób wysyłać zapytania HTTP i pracować z zewnętrznymi API w Pythonie. W tym artykule przedstawimy ci, jak zacząć korzystać z requests py, pokażemy przydatne przykłady i omówimy najczęstsze problemy, które mogą się pojawić. Zapnij pasy, czas na zabawę z zapytaniami HTTP!

Czym jest requests py?

Biblioteka requests py to jeden z najczęściej używanych modułów w Pythonie, który ułatwia wykonywanie zapytań HTTP (Hypertext Transfer Protocol). HTTP to protokół, który jest podstawą komunikacji w Internecie, wykorzystywany do wymiany danych pomiędzy serwerem a klientem. Dzięki requests py wysyłanie zapytań, pobieranie danych czy interakcja z API staje się bajecznie prosta i przyjemna. Jeśli jeszcze tego nie zrobiłeś, to czas na zainstalowanie tej biblioteki! Możesz to zrobić w bardzo prosty sposób, używając PIP:

pip install requests

Po zainstalowaniu requests py możesz zacząć korzystać z tej biblioteki w swoich projektach. W kolejnych częściach artykułu przejdziemy przez podstawowe operacje, takie jak wysyłanie zapytań GET, POST, czy obsługa odpowiedzi z serwera.

Wysyłanie zapytań GET za pomocą requests py

Najprostszym typem zapytania HTTP jest zapytanie GET, które służy do pobierania danych z serwera. Zapytania GET są najczęściej używane do interakcji z publicznymi API, pobierania plików z Internetu lub sprawdzania informacji na stronach internetowych. Przyjrzyjmy się, jak wykonać takie zapytanie przy pomocy requests py:


import requests

# Wysyłanie zapytania GET do strony
response = requests.get('https://api.github.com')

# Sprawdzamy status odpowiedzi
print(response.status_code)

# Jeśli wszystko jest w porządku, wyświetlamy dane w formacie JSON
if response.status_code == 200:
    data = response.json()
    print(data)

W tym przykładzie wysyłamy zapytanie GET do API GitHub, które zwraca dane w formacie JSON. Dzięki funkcji response.json() możemy łatwo zamienić odpowiedź serwera na obiekt w Pythonie.

Wysyłanie zapytań POST za pomocą requests py

Kolejnym popularnym zapytaniem HTTP jest zapytanie POST, które służy do wysyłania danych na serwer. Jest to bardzo przydatne, jeśli chcesz przesyłać dane użytkowników, formularze lub pliki. Oto przykład, jak wysłać zapytanie POST za pomocą requests py:


import requests

# Dane do wysłania w formie słownika
data = {'name': 'Jan', 'age': 30}

# Wysyłanie zapytania POST z danymi
response = requests.post('https://httpbin.org/post', data=data)

# Sprawdzamy status odpowiedzi
print(response.status_code)

# Wyświetlamy odpowiedź serwera
print(response.json())

W tym przykładzie wysyłamy dane do serwera httpbin, który zwraca te same dane w odpowiedzi. Warto pamiętać, że dane przesyłane w zapytaniu POST są zazwyczaj wykorzystywane do tworzenia lub modyfikowania zasobów na serwerze.

Wysyłanie zapytań z nagłówkami

Czasami musimy dodać dodatkowe informacje do naszego zapytania, na przykład w postaci nagłówków HTTP. Nagłówki są wykorzystywane do przesyłania informacji, takich jak typ akceptowanego formatu danych, tokeny autoryzacyjne, czy informacje o przeglądarce. Oto przykład, jak dodać nagłówki do zapytania GET:


import requests

# Nagłówki, które chcemy wysłać
headers = {'User-Agent': 'Mozilla/5.0'}

# Wysyłanie zapytania GET z nagłówkami
response = requests.get('https://httpbin.org/headers', headers=headers)

# Sprawdzamy status odpowiedzi
print(response.status_code)

# Wyświetlamy odpowiedź z nagłówkami
print(response.json())

W tym przykładzie dodaliśmy nagłówek User-Agent, który informuje serwer o tym, że zapytanie pochodzi z przeglądarki internetowej. Dzięki tym informacjom serwer może dostosować odpowiedź do rodzaju klienta, z którym ma do czynienia.

Obsługa błędów w requests py

Chociaż zapytania HTTP zwykle są proste do wykonania, to jednak mogą wystąpić różne błędy. Ważne jest, aby odpowiednio obsługiwać te błędy, aby nasz program nie zakończył pracy w sposób niespodziewany. requests py daje nam narzędzia do obsługi wyjątków i sprawdzania statusu odpowiedzi. Oto przykład obsługi błędów:


import requests

try:
    # Wysyłanie zapytania GET
    response = requests.get('https://api.github.com')

    # Sprawdzamy, czy zapytanie zakończyło się sukcesem
    response.raise_for_status()  # Jeśli status to 4xx lub 5xx, podnosi wyjątek

    # Praca z odpowiedzią
    print(response.json())

except requests.exceptions.RequestException as e:
    print(f'Wystąpił błąd: {e}')

W powyższym przykładzie używamy funkcji raise_for_status(), która automatycznie sprawdza, czy odpowiedź z serwera zawiera błąd (np. 404 lub 500). Jeśli tak, podnosi wyjątek, który możemy obsłużyć w bloku except.

Dlaczego warto używać requests py?

Biblioteka requests py jest bardzo popularna wśród programistów, ponieważ oferuje prostą i intuicyjną składnię, która pozwala szybko rozpocząć pracę z zapytaniami HTTP. Oto kilka powodów, dlaczego warto używać requests py:

  • Łatwość użycia – składnia jest bardzo prosta, a sama biblioteka automatycznie zajmuje się wieloma szczegółami technicznymi.
  • Wsparcie dla różnych metod HTTP – GET, POST, PUT, DELETE, HEAD i wiele innych.
  • Automatyczna obsługa kodowania i dekodowania danych (JSON, XML itp.).
  • Świetna dokumentacja i ogromna społeczność, co ułatwia rozwiązywanie problemów.

Podsumowanie

Biblioteka requests py to jedno z najlepszych narzędzi do pracy z zapytaniami HTTP w Pythonie. Dzięki jej prostocie i wszechstronności, możesz łatwo i szybko wysyłać zapytania GET, POST, a także zarządzać nagłówkami, danymi oraz błędami. Bez względu na to, czy tworzysz prostą aplikację webową, czy pracujesz z zaawansowanymi API, requests py z pewnością pomoże Ci zaoszczędzić czas i wysiłek. Zacznij korzystać z tej biblioteki już teraz i ciesz się programowaniem w Pythonie!

Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!

Imię:
Treść: