From f82c6b094a670d16c51867f24497c8b655c5ab47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=20C=C3=A4sar=20Heinrich=20Theodor=20Bracht?= Date: Mon, 31 Mar 2025 06:06:07 +0000 Subject: [PATCH] Add new file --- ...ierung 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..5125b24 --- /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_ENDPOINT = "https://api.deinverkehrsverbund.de/abfahrtszeiten" + +# Funktion, um Abfahrtszeiten sicher abzurufen +def get_abfahrtszeiten(station_id): + try: + response = requests.get(f"{API_ENDPOINT}/{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 + + # Skriptstart + 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