From 798e233fab149ef1c10a8417639fa612a43d83a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=20C=C3=A4sar=20Heinrich=20Theodor=20Bracht?= Date: Tue, 1 Apr 2025 16:37:40 +0000 Subject: [PATCH] Automatische Aktualisierung der Abfahrtszeiten implementiert --- ...lisierung der Abfahrtszeiten implementiert | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Automatische Aktualisierung der Abfahrtszeiten implementiert diff --git a/Automatische Aktualisierung der Abfahrtszeiten implementiert b/Automatische Aktualisierung der Abfahrtszeiten implementiert new file mode 100644 index 0000000..5b21d0f --- /dev/null +++ b/Automatische Aktualisierung der Abfahrtszeiten implementiert @@ -0,0 +1,38 @@ +import requests +import time +from datetime import datetime + +# API-Endpunkt für Abfahrtszeiten (aktualisieren mit der echten URL) +API_URL = "https://api.deinverkehrsverbund.de/abfahrtszeiten" + +# Funktion, um Abfahrtszeiten sicher abzurufen +def get_abfahrtszeiten(station_id): + try: + response = requests.get(f"{API_URL}/{station_id}", timeout=10) + response.raise_for_status() + return response.json() + except requests.exceptions.Timeout: + print("Fehler: Die Anfrage hat zu lange gedauert.") + except requests.exceptions.HTTPError as e: + print(f"HTTP-Fehler: {e}") + except requests.exceptions.RequestException as e: + print(f"Netzwerkfehler: {e}") + return [] + + # Automatische Aktualisierung der Abfahrtszeiten + def update_abfahrtszeiten_periodisch(station_id, interval=10): + while True: + print(f"[{datetime.now()}] Aktualisiere Abfahrtszeiten für Station {station_id}...") + abfahrten = get_abfahrtszeiten(station_id) + + if abfahrten: + print(f"Neue Abfahrtszeiten: {abfahrten}") + else: + print("Keine Abfahrtszeiten verfügbar.") + + time.sleep(interval * 60) # Wartezeit in Minuten + + # Beispielstation und Start des Skripts + if __name__ == "__main__": + station_id = "obstwiesen_id" # Hier mit echter Stations-ID ersetzen + update_abfahrtszeiten_periodisch(station_id, interval=10) \ No newline at end of file