Merge branch 'patch-3' into 'main'

Add new file

See merge request oeffi/oeffi!22
This commit is contained in:
Anton Cäsar Heinrich Theodor Bracht 2025-03-31 06:08:12 +00:00
commit b0980aab13

View file

@ -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)