v3, Aircraft Icao + name

This commit is contained in:
hubobel 2025-11-30 18:13:44 +01:00
parent b98f05282b
commit f542fdeb70

View file

@ -1,4 +1,5 @@
import requests import requests
import json
USERNAME = "hubobel" USERNAME = "hubobel"
URL = "https://www.simbrief.com/api/xml.fetcher.php" URL = "https://www.simbrief.com/api/xml.fetcher.php"
@ -13,10 +14,18 @@ def minuten_zu_zeit(minuten) -> str:
stunden = minuten // 60 # volle Stunden stunden = minuten // 60 # volle Stunden
rest_min = minuten % 60 # verbleibende Minuten rest_min = minuten % 60 # verbleibende Minuten
return f"{stunden}:{rest_min:02d}" # zweistellige Minutenanzeige return f"{stunden}:{rest_min:02d}" # zweistellige Minutenanzeige
def aircr_name(aircraft_icao):
with open("aircraft_full.json", "r", encoding="utf-8") as f:
aircraft_data = json.load(f)
if aircraft_icao in aircraft_data:
antwort = (aircraft_data[aircraft_icao]["name"])
else:
print("Code nicht vorhanden")
antwort = "unbekanntes Luftfahrzeug"
return (antwort)
resp = requests.get(URL, params=params, timeout=15) resp = requests.get(URL, params=params, timeout=15)
# Prüfen, ob Request OK war
resp.raise_for_status() resp.raise_for_status()
data = resp.json() # dict data = resp.json() # dict
@ -25,16 +34,18 @@ data = resp.json() # dict
print(data.keys()) print(data.keys())
# Typische Bereiche (abhängig von deinem Flugplan): # Typische Bereiche (abhängig von deinem Flugplan):
general = data.get("general", {}) general = data.get("general", {})
origin = data.get("origin", {}) origin = data.get("origin", {})
dest = data.get("destination", {}) dest = data.get("destination", {})
aircraft = data.get("aircraft", {}) aircraft = data.get("aircraft", {})
time = data.get("times", {}) time = data.get("times", {})
block =minuten_zu_zeit(int(time.get("sched_block"))/60) block = minuten_zu_zeit(int(time.get("sched_block"))/60)
aircraft_icao = aircraft["icaocode"]
aircraft_name = aircr_name((aircraft_icao))
print("Airline:", general.get("icao_airline")) print("Airline:", general.get("icao_airline"))
print("Flugnummer:", general.get("flight_number")) print("Flugnummer:", general.get("flight_number"))
print("Abflug ICAO:", origin.get("icao_code")) print("Abflug ICAO:", origin.get("icao_code"))
print("Ziel ICAO:", dest.get("icao_code")) print("Ziel ICAO:", dest.get("icao_code"))
print("Geplante Blockzeit:", block) print("Geplante Blockzeit:", block)
print(aircraft) print(aircraft_icao, aircraft_name)