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

Biblioteka Python Requests (jak działa dla programistów)

Python jest powszechnie ceniony za swoją prostotę i czytelność, co czyni go popularnym wyborem wśród programistów do scrapingu stron internetowych i interakcji z API. Jedną z kluczowych bibliotek umożliwiających takie interakcje jest biblioteka Python Requests. Requests to biblioteka żądań HTTP dla Pythona, która pozwala na bezpośrednie wysyłanie żądań HTTP. W tym artykule przyjrzymy się funkcjom biblioteki Python Requests, zbadamy jej zastosowanie na praktycznych przykładach, oraz przedstawimy IronPDF, pokazując jak można ją połączyć z Requests w celu tworzenia i manipulacji plikami PDF z danych z sieci.

Wprowadzenie do biblioteki Requests

Biblioteka Python Requests została stworzona, aby uprościć i uczłowieczyć wykonywanie żądań HTTP. Upraszcza złożoność wysyłania żądań za pomocą prostego interfejsu API, dzięki czemu możesz skupić się na interakcji z usługami i danymi w sieci. Niezależnie od tego czy potrzebujesz pobrać strony internetowe, współpracować z REST API, wyłączyć weryfikację certyfikatów SSL, czy wysłać dane do serwera, biblioteka Requests cię pokrywa.

Najważniejsze cechy
  1. Prostota: Łatwa w użyciu i zrozumiała składnia.
  2. Metody HTTP: Obsługuje wszystkie metody HTTP — GET, POST, PUT, DELETE itp.
  3. Obiekty sesji: Utrzymują pliki cookie między żądaniami.
  4. Uwierzytelnianie: Upraszcza dodawanie nagłówków uwierzytelniających.
  5. Serwery proxy: Obsługa serwerów proxy HTTP.
  6. Limity czasu: Skutecznie zarządza limitami czasu żądań.
  7. Weryfikacja SSL: domyślnie weryfikuje certyfikaty SSL.

Instalacja Requests

Aby zacząć używać Requests, musisz ją zainstalować. Można to zrobić za pomocą pip:

pip install requests
pip install requests
SHELL

Podstawowe zastosowanie

Oto prosty przykład jak użyć Requests do pobrania strony internetowej:

import requests

# Send a GET request to the specified URL
response = requests.get('https://www.example.com')

# Print the status code of the response (e.g., 200 for success)
print(response.status_code)

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

# Send a GET request to the specified URL
response = requests.get('https://www.example.com')

# Print the status code of the response (e.g., 200 for success)
print(response.status_code)

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

Biblioteka żądań Python (Jak działa dla programistów): Rysunek 1 - Wykonywanie żądań HTTP

Przesyłanie parametrów w adresach URL

Często konieczne jest przekazanie parametrów do adresu URL. Moduł Python Requests ułatwia to dzięki słowu kluczowemu params:

import requests

# Define the parameters to be sent in the URL
params = {'key1': 'value1', 'key2': 'value2'}

# Send a GET request with parameters
response = requests.get('https://www.example.com', params=params)

# Print the full URL including the parameters
print(response.url)
import requests

# Define the parameters to be sent in the URL
params = {'key1': 'value1', 'key2': 'value2'}

# Send a GET request with parameters
response = requests.get('https://www.example.com', params=params)

# Print the full URL including the parameters
print(response.url)
PYTHON

Biblioteka żądań Python (Jak działa dla programistów): Rysunek 2 - Odpowiedź żądania GET

Obsługa danych JSON

Interakcja z interfejsami API zazwyczaj wiąże się z danymi JSON. Requests upraszcza to dzięki wbudowanemu wsparciu JSON:

import requests

# Send a GET request to retrieve JSON data
response = requests.get('https://jsonplaceholder.typicode.com/todos/1')

# Convert the JSON response to a Python dictionary
data = response.json()

# Print the JSON data
print(data)
import requests

# Send a GET request to retrieve JSON data
response = requests.get('https://jsonplaceholder.typicode.com/todos/1')

# Convert the JSON response to a Python dictionary
data = response.json()

# Print the JSON data
print(data)
PYTHON

Biblioteka żądań Python (Jak działa dla programistów): Rysunek 3 - Odpowiedź JSON

Praca z nagłówkami

Nagłówki mają kluczowe znaczenie dla żądań HTTP. Możesz dodawać własne nagłówki do swoich żądań w następujący sposób:

import requests

# Define custom headers
headers = {'User-Agent': 'my-app/0.0.1'}

# Send a GET request with custom headers
response = requests.get('https://www.example.com', headers=headers)

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

# Define custom headers
headers = {'User-Agent': 'my-app/0.0.1'}

# Send a GET request with custom headers
response = requests.get('https://www.example.com', headers=headers)

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

Biblioteka żądań Python (Jak działa dla programistów): Rysunek 4 - Odpowiedź nagłówka

Przesyłanie plików

Requests również obsługuje przesyłanie plików. Oto jak można przesłać plik:

import requests

# Define the files to be uploaded
files = {'file': open('report.txt', 'rb')}

# Send a POST request with the file
response = requests.post('https://www.example.com/upload', files=files)

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

# Define the files to be uploaded
files = {'file': open('report.txt', 'rb')}

# Send a POST request with the file
response = requests.post('https://www.example.com/upload', files=files)

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

Biblioteka żądań Python (Jak działa dla programistów): Rysunek 5 - Odpowiedź żądania POST

Przedstawiamy IronPDF for Python

IronPDF to wszechstronna biblioteka do generowania plików PDF, którą można wykorzystać do tworzenia, edytowania i manipulowania plikami PDF w aplikacjach napisanych w języku Python. Jest to szczególnie przydatne, gdy trzeba wygenerować pliki PDF z treści HTML, co czyni to narzędzie doskonałym rozwiązaniem do tworzenia raportów, faktur lub wszelkiego rodzaju dokumentów, które muszą być dystrybuowane w formacie przenośnym.

Instalacja IronPDF

Aby zainstalować IronPDF, użyj pip:

pip install ironpdf

Biblioteka żądań Python (Jak działa dla programistów): Rysunek 6 - IronPDF

Użycie IronPDF z Requests

Połączenie Requests i IronPDF pozwala na pobieranie danych z sieci i bezpośrednią ich konwersję do dokumentów PDF. Może to być szczególnie przydatne przy tworzeniu raportów na podstawie danych internetowych lub zapisywaniu stron internetowych w formacie PDF.

Oto przykład jak użyć Requests do pobrania strony internetowej, a następnie użyć IronPDF do zapisania jej jako PDF:

import requests
from ironpdf import ChromePdfRenderer

# Fetch a web page
url = 'https://www.example.com'
response = requests.get(url)

if response.status_code == 200:
    # Extract the HTML content from the response
    html_content = response.text

    # Initialize the PDF renderer
    renderer = ChromePdfRenderer()

    # Render the HTML content as a PDF
    pdf = renderer.RenderHtmlAsPdf(html_content)

    # Save the generated PDF to a file
    pdf.save('output.pdf')
    print('PDF created successfully')
else:
    # Print an error message if the request was not successful
    print(f'Failed to retrieve the webpage. Status code: {response.status_code}')
import requests
from ironpdf import ChromePdfRenderer

# Fetch a web page
url = 'https://www.example.com'
response = requests.get(url)

if response.status_code == 200:
    # Extract the HTML content from the response
    html_content = response.text

    # Initialize the PDF renderer
    renderer = ChromePdfRenderer()

    # Render the HTML content as a PDF
    pdf = renderer.RenderHtmlAsPdf(html_content)

    # Save the generated PDF to a file
    pdf.save('output.pdf')
    print('PDF created successfully')
else:
    # Print an error message if the request was not successful
    print(f'Failed to retrieve the webpage. Status code: {response.status_code}')
PYTHON

Ten skrypt najpierw pobiera zawartość HTML określonego URL za pomocą Requests. Następnie wykorzystuje IronPDF do konwersji zawartości HTML tego obiektu odpowiedzi do formatu PDF i zapisuje wynikowy plik PDF.

Biblioteka żądań Python (Jak działa dla programistów): Rysunek 7 - Odpowiedź PDF

Wnioski

Biblioteka Requests jest niezbędnym narzędziem dla każdego programisty Python, który musi współpracować z web API. Jej prostota i łatwość użycia czynią z niej go-to choice do wykonywania żądań HTTP. W połączeniu z IronPDF otwiera to jeszcze więcej możliwości, pozwalając na pobieranie danych z sieci i konwertowanie ich na profesjonalnej jakości dokumenty PDF. Niezależnie od tego czy tworzysz raporty, faktury, czy archiwizujesz treści z internetu, połączenie Requests i IronPDF zapewnia potężne rozwiązanie do generowania plików PDF.

Więcej informacji na temat licencji IronPDF można znaleźć na stronie licencji IronPDF. Możesz również zapoznać się z naszym szczegółowym samouczkiem na temat konwersji HTML do PDF, aby uzyskać więcej informacji.

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