Here is what I currently have. Still missing prolog information and namespace info. Encoding is irritating me also. :)
import os,sys import csv from elementtree.ElementTree import Element, SubElement, ElementTree, tostring def indent(elem, level=0): i = "\n" + level*" " if len(elem): if not elem.text or not elem.text.strip(): elem.text = i + " " for elem in elem: indent(elem, level+1) if not elem.tail or not elem.tail.strip(): elem.tail = i else: if level and (not elem.tail or not elem.tail.strip()): elem.tail = i root = Element("boxes") myfile = open('ClientsXMLUpdate.csv') csvreader = csv.reader(myfile) for row in csvreader: mainbox = SubElement(root, "box") r2 = csv.reader(myfile) b = r2.next() mainbox.attrib["city"] = b[10] mainbox.attrib["country"] = b[9] mainbox.attrib["phone"] = b[8] mainbox.attrib["address"] = b[7] mainbox.attrib["name"] = b[6] mainbox.attrib["pl_heartbeat"] = b[5] mainbox.attrib["sw_ver"] = b[4] mainbox.attrib["hw_ver"] = b[3] mainbox.attrib["date_activated"] = b[2] mainbox.attrib["mac_address"] = b[1] mainbox.attrib["boxid"] = b[0] indent(root) ElementTree(root).write('test.xml', "UTF-8") -- http://mail.python.org/mailman/listinfo/python-list