Zum Fußzeileninhalt springen
PYTHON-HILFE

Requests-Bibliothek in Python: Ein Tutorial

In der vielfältigen Umgebung der Webentwicklung und Datenabfrage ist Python eine außergewöhnliche Sprache. Seine Einfachheit, gepaart mit leistungsstarken Bibliotheken, macht es zu einer idealen Wahl für die Handhabung von HTTP-Anfragen. Unter diesen Bibliotheken zeichnet sich das Python-Requests-Modul als vielseitiges und benutzerfreundliches Werkzeug für die Interaktion mit Webdiensten aus.

In diesem Artikel werden wir die Grundlagen von HTTP-Anfragen untersuchen und erkunden, wie die Requests-Bibliothek Python-Entwicklern ermöglicht, diese effizient zu handhaben. Wir werden auch untersuchen, wie HTTP-Anfragen mit einer Bibliothek wie IronPDF for Python verwendet werden können, um das Erstellen und Bearbeiten von PDFs zu erleichtern.

Verständnis von HTTP-Anfragen

HTTP (Hypertext Transfer Protocol) ist die Grundlage der Datenkommunikation im World Wide Web. Es ist ein Protokoll, das den Austausch von Hypertext wie HTML zwischen Clients (Webbrowsern) und Servern regelt. HTTP funktioniert als Anfrage-Antwort-Protokoll, bei dem ein Client eine Anfrage an einen Server sendet und der Server mit der angeforderten Ressource antwortet.

Eine HTTP-Anfrage besteht typischerweise aus mehreren Komponenten:

  1. HTTP-Methode: Gibt die Aktion an, die der Client bei einer HTTP-Anfrage ausführen möchte. Gängige Methoden sind GET, POST, PUT, DELETE usw.
  2. URL: Uniform Resource Locator (Einheitlicher Ressourcen-Locator), der die angeforderte Ressource identifiziert.
  3. Anfrage-Header: Zusätzliche Informationen, die mit der Anfrage gesendet werden, wie z. B. Authentifizierungsdaten, Inhaltstyp usw.
  4. Body: Daten, die mit einer POST- oder PUT-Anfrage gesendet werden.

Einführung in die Requests-Bibliothek

Die Requests-Bibliothek in Python vereinfacht den Prozess der Erstellung von HTTP-Anfragen. Sie bietet eine elegante und intuitive API zum Senden verschiedener Arten von Anfragen und zur nahtlosen Bearbeitung von Antworten.

Requests Python (Funktionsweise für Entwickler): Abbildung 1 - Die Webseite der Requests-Bibliothek enthält die Installation

Lassen Sie uns einige grundlegende Anwendungsbeispiele durchgehen, aber zunächst sehen wir uns den Installationsprozess des Requests-Moduls an.

Installation

Stellen Sie vor der Verwendung der Requests-Bibliothek sicher, dass sie installiert ist. Sie können es über pip installieren:

pip install requests
pip install requests
SHELL

Erstellen einer GET-Anfrage

Verwenden Sie die requests.get()-Methode, um eine GET-Anfrage an eine angegebene URL zu stellen:

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

Dieser Code sendet eine GET-Anfrage an die angegebene URL https://api.example.com/data und gibt den Antworttext aus.

Erstellen einer POST-Anfrage

Um POST-Anfragen mit Daten zu senden, verwenden Sie die requests.post()-Methode:

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

Hier senden wir eine POST-Anfrage mit JSON-Daten an https://api.example.com/post und drucken die JSON-Antwortdaten aus.

Bearbeitung eines Antwortobjekts

Das von einer HTTP-Anfrage zurückgegebene Antwortobjekt bietet verschiedene Attribute und Methoden, um auf unterschiedliche Aspekte der Antwort zuzugreifen, wie z.B. HTTP-Header, Statuscode, Inhalt usw. Zum Beispiel:

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

Fehlerbehandlung

Beim Erstellen von HTTP-Anfragen ist es wichtig, Fehler elegant zu behandeln. Die Requests-Bibliothek vereinfacht die Fehlerbehandlung, indem sie Ausnahmen für häufige Fehler wie Verbindungsfehler und Timeouts auslöst. Zum Beispiel:

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

Deaktivierung der SSL-Zertifikatsüberprüfung

In der requests-Bibliothek können Sie die Prüfung von SSL-Zertifikaten deaktivieren, indem Sie den verify-Parameter in Ihrer Anfrage auf False setzen:

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

Einfügen von Abfragezeichenfolgen

Sie können auch Abfrageparameter in Ihrer URL aufnehmen, indem Sie sie mit dem params-Parameter anhängen:

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

In diesem Beispiel enthält das params-Wörterbuch die Abfrageparameter. Beim Erstellen der GET-Anfrage werden diese Parameter automatisch an die URL angehängt, was in einer Anforderungs-URL wie https://api.example.com/data?key=value&param2=value2 resultiert.

Integration von Requests mit IronPDF zur PDF-Erstellung

Bevor wir in die Implementierung einsteigen, lassen Sie uns kurz IronPDF verstehen.

IronPDF - Die Python-PDF-Bibliothek

IronPDF for Python ist eine beliebte Python-Bibliothek zum Erstellen, Lesen, Bearbeiten und Verarbeiten von PDF-Dokumenten. Sie bietet eine Vielzahl von Funktionen zur programmatischen Erstellung von professionell aussehenden PDFs.

Requests Python (Funktionsweise für Entwickler): Abbildung 2 - IronPDF-Webseite

Um mit IronPDF PDFs mit Inhalten, die über Requests abgerufen wurden, zu erstellen, führen Sie die folgenden Schritte durch:

Schritt 1: Installieren Sie IronPDF

Stellen Sie zunächst sicher, dass IronPDF in Ihrer Python-Umgebung installiert ist. Sie können es über pip installieren:

pip install ironpdf
pip install ironpdf
SHELL

Schritt 2: Inhalte mit Requests abrufen

Verwenden Sie die Requests-Bibliothek, um die Inhalte abzurufen, die Sie im PDF enthalten möchten. Zum Beispiel:

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

Schritt 3: PDF mit IronPDF generieren

Sobald Sie die Inhalte haben, verwenden Sie IronPDF, um das PDF zu erstellen. Hier ist ein einfaches Beispiel:

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

In diesem Beispiel enthält data den von Requests abgerufenen HTML-Inhalt. Die RenderHtmlAsPdf()-Methode von IronPDF wandelt diesen HTML-Inhalt in ein PDF-Dokument um. Schließlich wird das PDF mit der SaveAs()-Methode in einer Datei gespeichert.

Mit der Requests-Bibliothek vereinfacht Python die Interaktion mit dem Web, sodass Entwickler mehr Zeit für die Erstellung großartiger Anwendungen haben und sich nicht mit den Komplexitäten der HTTP-Kommunikation auseinandersetzen müssen.

Erweiterte Nutzung

Sie können den PDF-Erstellungsprozess weiter verbessern, indem Sie die PDF-Einstellungen, Ränder, Ausrichtung, Bilder, CSS, JavaScript und mehr mit den umfangreichen Fähigkeiten von IronPDF anpassen. Zum Beispiel:

# 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

Hier setzen wir Seitenränder und fügen Bilder aus dem Basisverzeichnis hinzu, bevor wir es in einer Datei speichern.

Für weitere Informationen zu IronPDF-Funktionen und -Möglichkeiten besuchen Sie bitte die Dokumentationsseite und sehen Sie sich diese gebrauchsfertigen Code-Beispiele zur Integration mit Python an.

Abschluss

Die Requests-Bibliothek in Python bietet eine leistungsstarke, aber einfache Schnittstelle zum Erstellen von HTTP-Anfragen. Egal, ob Sie Daten von APIs abrufen, mit Webdiensten interagieren oder Webseiten scrapen, Requests vereinfacht den HTTP-Anfrageprozess mit seiner intuitiven API und robusten Funktionen.

Die Kombination von IronPDF for Python mit Requests in Python eröffnet eine Welt von Möglichkeiten zur dynamischen Erstellung von PDF-Dokumenten aus abgerufenen Inhalten. Indem sie die in diesem Artikel beschriebenen Schritte befolgen und die erweiterten Funktionen sowohl von IronPDF als auch von Requests erkunden, können Python-Entwickler ihren PDF-Erstellungsprozess optimieren und hochwertige Dokumente erstellen, die auf ihre spezifischen Anforderungen zugeschnitten sind.

Requests Python (Funktionsweise für Entwickler): Abbildung 3 - IronPDF-Lizenzierungsseite

IronPDF ist perfekt für Unternehmen. Probieren Sie die kostenlose Testversion von IronPDF, die bei $799 beginnt, und mit einer Geld-zurück-Garantie ist es eine sichere Wahl für das Dokumentenmanagement. Laden Sie IronPDF jetzt herunter und erleben Sie nahtlose PDF-Integration!

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me