XML/encoding/prolog/python hell...

fscked fsckedagain at gmail.com
Thu Mar 29 10:51:22 EDT 2007


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")




More information about the Python-list mailing list