hm...v5
This commit is contained in:
parent
1152709de7
commit
d5e4a9c08a
1 changed files with 45 additions and 8 deletions
|
|
@ -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"
|
||||||
|
|
@ -8,24 +9,60 @@ params = {
|
||||||
"json": 1, # JSON statt XML
|
"json": 1, # JSON statt XML
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def minuten_zu_zeit(minuten) -> str:
|
||||||
|
minuten = int(minuten)
|
||||||
|
stunden = minuten // 60 # volle Stunden
|
||||||
|
rest_min = minuten % 60 # verbleibende Minuten
|
||||||
|
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)
|
||||||
|
|
||||||
|
def start_name(ori_icao):
|
||||||
|
|
||||||
|
with open("airports_full.json", "r", encoding="utf-8") as f:
|
||||||
|
ori_data = json.load(f)
|
||||||
|
if ori_icao in ori_data:
|
||||||
|
antwort = (ori_data[ori_icao]["name"])
|
||||||
|
else:
|
||||||
|
print("Code nicht vorhanden")
|
||||||
|
antwort = "unbekannter Startflughafen"
|
||||||
|
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
|
||||||
|
|
||||||
# Überblick verschaffen: Top-Level-Keys ausgeben
|
# Top-Level-Keys ausgeben
|
||||||
print(data.keys())
|
print(data.keys())
|
||||||
|
print()
|
||||||
|
|
||||||
# Typische Bereiche (abhängig von deinem Flugplan):
|
|
||||||
general = data.get("general", {})
|
general = data.get("general", {})
|
||||||
origin = data.get("origin", {})
|
origin = data.get("origin", {})
|
||||||
|
origin_name = start_name(origin["icao_code"])
|
||||||
|
origin_icao = origin["icao_code"]
|
||||||
dest = data.get("destination", {})
|
dest = data.get("destination", {})
|
||||||
|
dest_name = start_name(dest["icao_code"])
|
||||||
|
dest_icao = dest["icao_code"]
|
||||||
|
aircraft = data.get("aircraft", {})
|
||||||
|
time = data.get("times", {})
|
||||||
|
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:", general.get("times"))
|
print("Geplante Blockzeit:", block)
|
||||||
print()
|
print(aircraft_icao, aircraft_name)
|
||||||
|
print(origin["icao_code"], origin_name)
|
||||||
|
print(dest_icao, dest_name)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue