I have an XML file that has an element called "Node". These can be nested to any depth and the depth of the nesting is not known to me. I need to parse the file and preserve the nesting. For exmaple, if the XML file had:
<Node Name="A"> <Node Name="B"> <Node Name="C"> <Node Name="D"> <Node Name="E"> When I'm parsing Node "E" I need to know I'm in A/B/C/D/E. Problem is I don't know how deep this can be. This is the code I have so far: nodes = [] def parseChild(c): if c.tag == 'Node': if 'Name' in c.attrib: nodes.append(c.attrib['Name']) for c1 in c: parseChild(c1) else: for node in nodes: print node, print c.tag for parent in tree.getiterator(): for child in parent: for x in child: parseChild(x) My problem is that I don't know when I'm done with a node and I should remove a level of nesting. I would think this is a fairly common situation, but I could not find any examples of parsing a file like this. Perhaps I'm going about it completely wrong. -- https://mail.python.org/mailman/listinfo/python-list