Files
vatsim-stats/mrzmay_eval.py
2024-06-01 00:44:23 +02:00

37 lines
1.8 KiB
Python

import json
from datetime import datetime, timedelta
def s2t(seconds):
h = seconds//3600
m = seconds%3600//60
s = (seconds%3600)%60
return "{:02.0f}:{:02.0f}:{:02.0f}".format(h, m, s)
f = open("mrzmay.json", "r")
members = json.loads(f.read())
f.close()
dateformat = "%Y-%m-%dT%H:%M:%SZ"
stations = ['EDWW_M__CTR', 'EDUU_O_CTR', 'EDWW_MRZ_CTR', 'EDWW__M_CTR', 'EDWW_M___CTR', 'EDWW_B___CTR', 'EDWW_CTR', 'EDWW_B_CTR', 'EDWW_M_CTR', 'EDWW_B__CTR', 'EDWW_F_CTR', 'EDWW_K_CTR']
for member in members:
member["eval"] = {"sessions": 0, "time": timedelta(seconds=0), "aircraft": 0}
for item in member["data"]["items"]:
if datetime.strptime(item["connection_id"]["start"],dateformat) > datetime.strptime("2024-05-01T00:00:00Z",dateformat) and item["connection_id"]["callsign"] in stations:
member["eval"]["sessions"] += 1
member["eval"]["time"] += (datetime.strptime(item["connection_id"]["end"], dateformat) - datetime.strptime(item["connection_id"]["start"], dateformat))
member["eval"]["aircraft"] += item["aircrafttracked"]
print("{:>7}: Sessions: {:>3}, Online für: {}, Flugzeuge: {:>4}".format(member["name"], member["eval"]["sessions"], s2t(member["eval"]["time"].total_seconds()), member["eval"]["aircraft"]))
totals ={"sessions": 0, "time": timedelta(seconds=0), "aircraft": 0}
for member in members:
totals["sessions"] += member["eval"]["sessions"]
totals["time"] += member["eval"]["time"]
totals["aircraft"] += member["eval"]["aircraft"]
print("=============================================================")
print("{:>7}: Sessions: {:>3}, Online für: {}, Flugzeuge: {:>4}".format("Gesamt", totals["sessions"], s2t(totals["time"].total_seconds()), totals["aircraft"]))