import pandas as pd import time # 2010-01-04T23:37:42Z timenow = time.localtime() timestamp = f"{timenow.tm_year}-{timenow.tm_mon}-{timenow.tm_mday}T{timenow.tm_hour}:{timenow.tm_min}:{timenow.tm_sec}Z" TEMPLATE = """ {data} """ WPT_TEMPLATE = """ {elevation} {name} {comment} {description} {symbol} """ def pyToGPX(fp): # "../../therion/data/SYNTHESE_POINTAGES.csv" data = pd.read_csv(fp) waypoints = "" for index,line in data.iterrows(): if ("camp" in line.complete_name) or ("Camp" in line.complete_name): symbol= "Lodging" else: symbol = "Waypoint" formatted = WPT_TEMPLATE.format( latitude= line.latitude, longitude= line.longitude, elevation= line.altitude, comment= line.cadnum, name= line.complete_name, description= line.comment, symbol= symbol ) if "inf" not in formatted: waypoints+=formatted with open(fp.strip("csv") + "gpx", "w+") as f: f.write(TEMPLATE.format(data=waypoints,time = timestamp))