Skip to content

Instantly share code, notes, and snippets.

@Eckankar
Created December 27, 2010 20:48
Show Gist options
  • Save Eckankar/756548 to your computer and use it in GitHub Desktop.
Save Eckankar/756548 to your computer and use it in GitHub Desktop.
Converts running data files to csv, for plotting.
#!/usr/bin/env python
from __future__ import print_function
from xml.dom.minidom import parseString
from dateutil.parser import parse as dateparse
from time import mktime
import sys
if len(sys.argv) > 1:
filename = sys.argv[1]
else:
filename = 'runninglog.xml'
if len(sys.argv) > 2:
csvfilename = sys.argv[2]
else:
csvfilename = 'runninglog.csv'
logfile = open(filename, 'r')
log = parseString('<root>' + logfile.read() + '</root>')
logfile.close()
csvout = open(csvfilename, 'w')
for point in log.getElementsByTagName('point'):
time = mktime(dateparse(point.attributes['time'].value).timetuple())
if 'hr' in point.attributes.keys():
hr = point.attributes['hr'].value
else:
hr = ''
print(int(time), hr, sep=',', file=csvout)
csvout.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment