Skip to content

Instantly share code, notes, and snippets.

@rlcamp
Created July 30, 2025 00:38
Show Gist options
  • Save rlcamp/b33586e621d3f89777763fa4b3ff9df0 to your computer and use it in GitHub Desktop.
Save rlcamp/b33586e621d3f89777763fa4b3ff9df0 to your computer and use it in GitHub Desktop.
#!/usr/bin/env python3
import xml.etree.ElementTree as ET
import sys
import datetime
for trkseg in ET.parse(sys.stdin).find('{http://www.topografix.com/GPX/1/1}trk'):
for trkpt in trkseg:
lon = float(trkpt.attrib['lon'])
lat = float(trkpt.attrib['lat'])
timetext = trkpt.find('{http://www.topografix.com/GPX/1/1}time').text
time = datetime.datetime.timestamp(datetime.datetime.strptime(timetext.rstrip('Z'), '%Y-%m-%dT%H:%M:%S').replace(tzinfo=datetime.timezone.utc))
print('%.12g, %.12g, %.12g' % (time, lon, lat))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment