Przejdź do treści stopki
POMOC DOTYCZąCA JęZYKA PYTHON

Biblioteka Requests w Python: Samouczek

W zróżnicowanym środowisku tworzenia stron internetowych i pobierania danych Python jest wyjątkowym językiem. Jego prostota w połączeniu z potężnymi bibliotekami sprawia, że jest to idealny wybór do obsługi żądań HTTP. Wsrod tych bibliotek, modul Python Requests wyroznia sie jako wszechstronne i przyjazne dla uzytkownika narzedzie do interakcji z uslugami internetowymi.

W tym artykule przyjrzymy sie podstawom zadzen HTTP oraz zbadamy, jak biblioteka Requests umozliwia programistom Python skuteczne ich obslugiwanie. Przyjrzymy się również, w jaki sposób żądania HTTP mogą być wykorzystywane w połączeniu z biblioteką taką jak IronPDF for Python, co ułatwia tworzenie i edycję plików PDF.

Zrozumienie żądań HTTP

HTTP (Hypertext Transfer Protocol) stanowi podstawę komunikacji danych w sieci WWW. Jest to protokół regulujący transfer hipertekstu, takiego jak HTML, między klientami (przeglądarkami internetowymi) a serwerami. HTTP działa jako protokół żądanie-odpowiedź, w którym klient wysyła żądanie do serwera, a serwer odpowiada, dostarczając żądany zasób.

Żądanie HTTP zazwyczaj składa się z kilku elementów:

  1. Metoda HTTP: Określa działanie, które klient chce wykonać, aby wysłać żądanie HTTP. Typowe metody to GET, POST, PUT, DELETE itp.
  2. URL: Uniform Resource Locator, czyli jednolity lokalizator zasobów, który identyfikuje żądany zasób.
  3. Nagłówki żądania: Dodatkowe informacje wysyłane wraz z żądaniem, takie jak dane uwierzytelniające, typ zawartości itp.
  4. Treść: Dane wysyłane w żądaniu POST lub PUT.

Przedstawiamy bibliotekę Requests

Biblioteka Requests w Python upraszcza process wykonywania zadan HTTP. Zapewnia elegancki i intuicyjny interfejs API do wysyłania różnego rodzaju żądań i płynnego przetwarzania odpowiedzi.

Żadania Python (Jak to działa dla programistów): Rysunek 1 - Strona biblioteki Żądania zawierająca instalację

Przejdzmy przez kilka przykladow uzycia, ale najpierw zobaczmy process instalacji modulu Requests.

Instalacja

Przed uzyciem biblioteki Requests, upewnij sie, ze jest zainstalowana. Można ją zainstalować za pomocą pip:

pip install requests
pip install requests
SHELL

Wysyłanie żądania GET

Uzyj metody requests.get(), aby wykonac zadanie GET na okreslony URL tutaj:

import requests

# Make a GET request to the URL
response = requests.get('https://api.example.com/data')

# Print the response text (content of the response)
print(response.text)
import requests

# Make a GET request to the URL
response = requests.get('https://api.example.com/data')

# Print the response text (content of the response)
print(response.text)
PYTHON

Ten kod wysyla zadanie GET do okreslonego URL https://api.example.com/data i drukuje trescia odpowiedzi.

Wysyłanie żądania POST

Aby wykonac zadania POST z danymi, uzyj metody requests.post():

import requests

# Data to send in the POST request
data = {'key': 'value'}

# Make a POST request with data
response = requests.post('https://api.example.com/post', data=data)

# Print the response in JSON format
print(response.json())
import requests

# Data to send in the POST request
data = {'key': 'value'}

# Make a POST request with data
response = requests.post('https://api.example.com/post', data=data)

# Print the response in JSON format
print(response.json())
PYTHON

Tutaj wysylamy zadanie POST z danymi JSON do https://api.example.com/post i drukujemy dane odpowiedzi JSON.

Obsługa obiektu Response

Obiekt odpowiedzi zwracany przez żądanie HTTP udostępnia różne atrybuty i metody umożliwiające dostęp do różnych aspektów odpowiedzi, takich jak nagłówki HTTP, kod statusu, treść itp. Na przykład:

import requests

# Make a GET request
response = requests.get('https://api.example.com/data')

# Print the status code of the response
print(response.status_code)

# Print the response headers
print(response.headers)
import requests

# Make a GET request
response = requests.get('https://api.example.com/data')

# Print the status code of the response
print(response.status_code)

# Print the response headers
print(response.headers)
PYTHON

Obsługa błędów

Podczas wysyłania żądań HTTP kluczowe znaczenie ma poprawne obsługiwanie błędów. Biblioteka Requests upraszcza obsluge bledow, podnoszac/wywolujac wyjatki dla typowych bledow, takich jak bledy polaczenia i przekroczone czasy oczekiwania. Na przykład:

import requests

try:
    # Make a GET request
    response = requests.get('https://api.example.com/data')

    # Raise an exception for HTTP errors
    response.raise_for_status()
except requests.exceptions.HTTPError as err:
    # Print the error message
    print(err)
import requests

try:
    # Make a GET request
    response = requests.get('https://api.example.com/data')

    # Raise an exception for HTTP errors
    response.raise_for_status()
except requests.exceptions.HTTPError as err:
    # Print the error message
    print(err)
PYTHON

Wyłączanie weryfikacji certyfikatu SSL

W bibliotece requests mozesz wylaczyc weryfikacje certyfikatu SSL, ustawiajac parametr verify na False w zadaniu:

import requests

# Make a GET request with SSL verification disabled
response = requests.get('https://api.example.com/data', verify=False)

# Process the response
print(response.text)
import requests

# Make a GET request with SSL verification disabled
response = requests.get('https://api.example.com/data', verify=False)

# Process the response
print(response.text)
PYTHON

Uwzględnienie ciągów zapytania

Mozesz rowniez dolaczyc parametry zapytania do swojego URL poprzez ich dołączenie przy pomocy parametru params:

import requests

# Define query parameters
params = {'key': 'value', 'param2': 'value2'}

# Make a GET request with query parameters
response = requests.get('https://api.example.com/data', params=params)

# Process the response
print(response.text)
import requests

# Define query parameters
params = {'key': 'value', 'param2': 'value2'}

# Make a GET request with query parameters
response = requests.get('https://api.example.com/data', params=params)

# Process the response
print(response.text)
PYTHON

W tym przykladzie slownik params zawiera parametry zapytania. Podczas wykonywania zadania GET, te parametry sa automatycznie dołączane do URL, co skutkuje adresem URL zadania jak https://api.example.com/data?key=value&param2=value2.

Integracja Requests z IronPDF w celu generowania plików PDF

Zanim przejdziemy do realizacji, przyjrzyjmy się pokrótce IronPDF.

IronPDF – biblioteka PDF dla języka Python

IronPDF for Python to popularna biblioteka Pythona służąca do generowania, odczytu, edycji i manipulacji dokumentami PDF. Zapewnia bogaty zestaw funkcji do programowego tworzenia profesjonalnie wyglądających plików PDF.

Żądania Python (Jak to działa dla programistów): Rysunek 2 - strona IronPDF

Aby wygenerować pliki PDF za pomocą IronPDF przy użyciu treści pobranych za pośrednictwem Requests, wykonaj następujące czynności:

Krok 1: Zainstaluj IronPDF

Najpierw upewnij się, że masz zainstalowany IronPDF w swoim środowisku Python. Można ją zainstalować za pomocą pip:

pip install ironpdf

Krok 2: Pobieranie treści za pomocą żądań

Użyj biblioteki Requests, aby pobrać treść, którą chcesz umieścić w pliku PDF. Na przykład:

import requests

# Make a GET request to fetch data
response = requests.get('https://api.example.com/data')
data = response.text
import requests

# Make a GET request to fetch data
response = requests.get('https://api.example.com/data')
data = response.text
PYTHON

Krok 3: Wygeneruj plik PDF za pomocą IronPDF

Po przygotowaniu treści użyj IronPDF do wygenerowania pliku PDF. Oto podstawowy przykład:

from ironpdf import ChromePdfRenderer

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Create a PDF from the data received from requests
pdf = renderer.RenderHtmlAsPdf(data)

# Export to a file
pdf.SaveAs("output.pdf")
from ironpdf import ChromePdfRenderer

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Create a PDF from the data received from requests
pdf = renderer.RenderHtmlAsPdf(data)

# Export to a file
pdf.SaveAs("output.pdf")
PYTHON

W tym przykladzie data zawiera pobrana tresc HTML za posrednictwem Requests. Metoda RenderHtmlAsPdf() IronPDF konwertuje tę zawartość HTML na dokument PDF. Na koniec, PDF jest zapisywany do pliku przy użyciu metody SaveAs().

Dzięki bibliotece Requests, Python sprawia, że interakcje z webem są łatwe, umożliwiając developerom skupienie się bardziej na tworzeniu świetnych aplikacji, zamiast na rozwiązywaniu złożoności komunikacji HTTP.

Zaawansowane zastosowania

Możesz jeszcze bardziej usprawnić proces generowania plików PDF, dostosowując ustawienia PDF, marginesy, orientację, obrazy, CSS, JavaScript i inne elementy, korzystając z rozbudowanych możliwości IronPDF. Na przykład:

# Set page margins
renderer.RenderingOptions.MarginTop = 40  # millimeters
renderer.RenderingOptions.MarginLeft = 20  # millimeters
renderer.RenderingOptions.MarginRight = 20  # millimeters
renderer.RenderingOptions.MarginBottom = 40  # millimeters

# Example with HTML Assets
# Load external HTML assets: Images, CSS, and JavaScript.
# An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
my_advanced_pdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\\site\\assets")
my_advanced_pdf.SaveAs("html-with-assets.pdf")
# Set page margins
renderer.RenderingOptions.MarginTop = 40  # millimeters
renderer.RenderingOptions.MarginLeft = 20  # millimeters
renderer.RenderingOptions.MarginRight = 20  # millimeters
renderer.RenderingOptions.MarginBottom = 40  # millimeters

# Example with HTML Assets
# Load external HTML assets: Images, CSS, and JavaScript.
# An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
my_advanced_pdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\\site\\assets")
my_advanced_pdf.SaveAs("html-with-assets.pdf")
PYTHON

W tym miejscu ustawiamy marginesy strony i dodajemy obrazy z katalogu głównego przed zapisaniem jej do pliku.

Aby uzyskać więcej informacji na temat funkcji i możliwości IronPDF, odwiedź stronę dokumentacji i zapoznaj się z gotowymi przykładami kodu do integracji z Pythonem.

Wnioski

Biblioteka Requests w Python oferuje potężny, a przy tym prosty interfejs do wykonywania żądań HTTP. Niezależnie od tego, czy pobierasz dane z interfejsów API, korzystasz z usług internetowych, czy też zbierasz dane ze stron internetowych, Requests usprawnia proces wysyłania żądań HTTP dzięki intuicyjnemu interfejsowi API i solidnym funkcjom.

Połączenie IronPDF for Python z biblioteką Requests w Pythonie otwiera szerokie możliwości dynamicznego generowania dokumentów PDF na podstawie pobranych treści. Postępując zgodnie z instrukcjami zawartymi w tym artykułe i korzystając z zaawansowanych funkcji zarówno IronPDF, jak i Requests, programiści Pythona mogą usprawnić proces tworzenia plików PDF i generować wysokiej jakości dokumenty dostosowane do ich konkretnych wymagań.

Żądania Python (Jak to działa dla programistów): Rysunek 3 - strona licencji IronPDF

IronPDF jest idealnym rozwiązaniem dla firm. Wypróbuj darmowy okres próbny IronPDF rozpoczynający się od $999, a dzięki gwarancji zwrotu pieniędzy, to bezpieczny wybór do zarządzania dokumentami. Pobierz IronPDF już teraz i ciesz się płynną integracją z plikami PDF!

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespół wsparcia Iron

Jesteśmy online 24 godziny, 5 dni w tygodniu.
Czat
E-mail
Zadzwoń do mnie