fork download
  1. #!/usr/bin/env python3
  2.  
  3. from csv import DictReader
  4. from lxml.etree import ElementTree
  5. from lxml.builder import E
  6. import sys
  7.  
  8. ElementTree(
  9. E.gpx(
  10. *(
  11. E.wpt(
  12. E.name(row["name"]),
  13. E.extensions(E.color(row["color"])),
  14. lat=row["latitude"],
  15. lon=row["longitude"],
  16. )
  17. for row in DictReader(sys.stdin)
  18. )
  19. )
  20. ).write(sys.stdout.buffer, pretty_print=True)
Success #stdin #stdout 0.04s 15540KB
stdin
latitude,longitude,name,color
53.5,10,Test0,#0045ff
52.1,9.3,Test1,#739911
stdout
<gpx>
  <wpt lat="53.5" lon="10">
    <name>Test0</name>
    <extensions>
      <color>#0045ff</color>
    </extensions>
  </wpt>
  <wpt lat="52.1" lon="9.3">
    <name>Test1</name>
    <extensions>
      <color>#739911</color>
    </extensions>
  </wpt>
</gpx>