Mit der requests-Bibliothek APIs ansprechen

You are here:

Mit der requests-Bibliothek APIs ansprechen

Die requests-Bibliothek ist eine beliebte Python-Bibliothek, die das Senden von HTTP-Anfragen und das Arbeiten mit APIs (Application Programming Interfaces) erleichtert. In diesem Kapitel wirst Du sehen, wie Du die requests-Bibliothek verwenden kannst, um APIs auf einfache und effiziente Weise anzusprechen.

Installation und Import

Zunächst musst Du die requests-Bibliothek installieren. Dies kannst Du mit dem folgenden Befehl tun:

pip install requests

Nach der Installation kannst Du requests in Deinem Python-Code importieren:

import requests

Einfache GET-Anfrage

Um eine GET-Anfrage an eine API zu senden, verwendest Du die `get()`-Methode. Hier ist ein Beispiel, das die GitHub-API verwendet, um Informationen über einen Benutzer abzurufen:

response = requests.get('https://api.github.com/users/your_username_here')

# Informationen aus der Antwort extrahieren

data = response.json()

print(data)

Query-Parameter hinzufügen

Manchmal musst Du einer Anfrage zusätzliche Parameter hinzufügen. Hier ist ein Beispiel, das die OpenWeatherMap-API verwendet, um das aktuelle Wetter für eine Stadt abzurufen:

api_key = 'your_api_key_here'

city = 'Berlin'

url = f'https://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}'

response = requests.get(url)

weather_data = response.json()

print(weather_data)

POST-Anfrage

Wenn Du Daten an eine API senden möchtest, verwendest Du eine POST-Anfrage. Hier ist ein Beispiel, das die JSONPlaceholder-API verwendet, um einen neuen Beitrag zu erstellen:

url = 'https://jsonplaceholder.typicode.com/posts'

# Daten für die POST-Anfrage

post_data = {

    'title': 'My first post',

    'body': 'This is the content of my first post.',

    'userId': 1

}

response = requests.post(url, json=post_data)

new_post = response.json()

print(new_post)

Fehlerbehandlung

Es ist wichtig, die Fehlerbehandlung in Deinen Anfragen zu berücksichtigen. Du kannst den Statuscode der Antwort überprüfen, um festzustellen, ob die Anfrage erfolgreich war:

response = requests.get('https://api.github.com/users/nonexistent_user')

if response.status_code == 200:

    data = response.json()

    print(data)

else:

    print(f"An error occurred: {response.status_code}")

Fazit

Die requests-Bibliothek ist ein mächtiges Werkzeug für das Arbeiten mit APIs in Python. Mit ihren einfachen Methoden wie `get()` und `post()` und der Möglichkeit, JSON-Daten direkt aus der Antwort zu extrahieren, ermöglicht sie es Dir, APIs effizient und effektiv anzusprechen. Achte darauf, die Fehlerbehandlung in Deinem Code zu berücksichtigen, um auf mögliche Probleme vorbereitet zu sein.