diff --git a/travelInfo.py b/travelInfo.py index e9c3349..4d04671 100755 --- a/travelInfo.py +++ b/travelInfo.py @@ -9,7 +9,17 @@ from datetime import datetime import pytz timezone = pytz.timezone('Europe/Berlin') +statusData = None +tripData = None +def get_api_db(): + global statusData + global tripData + statusData_response = get("https://iceportal.de/api1/rs/status") + statusData = statusData_response.json() + tripData_response = get("https://iceportal.de/api1/rs/tripInfo/trip") + tripData = tripData_response.json() + def get_ssid(): scanoutput = check_output(["/usr/sbin/iwlist", "wlp2s0", "scan"]) @@ -22,19 +32,12 @@ def get_ssid(): # Get Speed from ICE-Portal def get_speed_db(): - rs = "https://iceportal.de/api1/rs/status" - response = get(rs) - data = response.json() - speed= str(data["speed"]) + speed= str(statusData["speed"]) return speed def get_next_db(): - rs = "https://iceportal.de/api1/rs/tripInfo/trip/" - response = get(rs) - data = response.json() - next_stop=data["trip"]["stopInfo"]["actualNext"] - - for i in data['trip']['stops']: + next_stop=tripData["trip"]["stopInfo"]["actualNext"] + for i in tripData['trip']['stops']: if i['station']['evaNr'] == next_stop: nextStationName = i['station']['name'] arrivalDelay = i['timetable']['arrivalDelay'] @@ -45,16 +48,14 @@ def get_next_db(): return tripinfo def get_trainInfo_db(): - rs = "https://iceportal.de/api1/rs/tripInfo/trip/" - response = get(rs) - data = response.json() - trainType = data["trip"]["trainType"] - trainNumber = data["trip"]["vzn"] - finalStationName = data["trip"]["stopInfo"]["finalStationName"] + trainType = tripData["trip"]["trainType"] + trainNumber = tripData["trip"]["vzn"] + finalStationName = tripData["trip"]["stopInfo"]["finalStationName"] return trainType+" "+trainNumber+" "+ finalStationName def main(): if get_ssid() == "WIFIonICE": + get_api_db() print(get_trainInfo_db()+" | "+"SPEED: "+get_speed_db()+" km/h | "+"NEXT: "+get_next_db()) return 0