Python Lernhandbuch

Kapitel 10: REST-APIs nutzen · Abschnitt 2 von 7

GET: Daten abrufen

python
import httpx

antwort = httpx.get(
    'https://jsonplaceholder.typicode.com/posts',
    params={'userId': 1},
    headers={'Accept': 'application/json'},
    timeout=10.0,
)
antwort.raise_for_status()      # löst bei 4xx und 5xx einen Fehler aus
posts = antwort.json()          # JSON zu Python: hier eine Liste von Dictionaries
print(len(posts), posts[0]['title'])

Was passiert: params hängt ?userId=1 an die URL an und kümmert sich um korrektes Kodieren. raise_for_status() stoppt bei einem Fehlercode, sonst würdest du mit einer Fehlerseite weiterarbeiten. .json() wandelt den Text der Antwort in Python-Objekte um.

Parameter von httpx.get(url, ...) Bedeutung
params Dictionary für die Abfrageparameter (?a=1&b=2)
headers Dictionary mit Kopfzeilen
timeout Wartezeit in Sekunden. Standard ist 5. Setze immer einen Wert, sonst kann dein Programm ewig hängen
auth Zugangsdaten, z. B. ('benutzer', 'passwort') für Basic Auth
follow_redirects True, um Weiterleitungen zu folgen (Standard False)
cookies Dictionary mit Cookies
Die Antwort (Response) Inhalt
.status_code Zahl, z. B. 200
.json() Body als Python-Objekt
.text Body als String
.content Body als Bytes (für Dateien und Bilder)
.headers Kopfzeilen der Antwort
.is_success True bei 2xx
.raise_for_status() Fehler bei 4xx und 5xx
.elapsed Dauer der Anfrage

Tipp: Bei Python-Beispielen kannst du auf ▶ Ausprobieren klicken, den Code verändern und direkt ausführen.

← Zurück