Need to get Tags and Values from Dom

TommyVee xxxxxxxx at xxxxxx.xxx
Mon May 14 19:51:45 EDT 2012


"james hedley"  wrote in message 
news:11852803.89.1337001575700.JavaMail.geo-discussion-forums at vbmd2...

On Monday, 14 May 2012 01:50:23 UTC+1, TommyVee  wrote:
> I have a very simple XML document that I need to "walk", and I'm using
> xml.dom.minidom.  No attributes, just lots of nested tags and associated
> values.  All I'm looking to do is iterate through each of the highest
> sibling nodes, check what the tag is, and process its value accordingly. 
> If
> a node has children, same thing - iterate through the nodes, check the 
> tags
> and process the values accordingly.  I see where each node object has a
> "childNodes" attribute, so I can drill down the tree.  But what are the 
> node
> attributes which indicate Tag and Value?  I thought it would have been
> nodeName and nodeValue, but that doesn't seem to be.  Does anyone know?
>
> Thanks in advance, TommyVee

Ah maybe you're confused about how text nodes work in minidom. Every element 
will have a nodeName attribute (not callable) but if you try el.nodeValue on 
a text node you get None. That's because the text is represented by a child 
node with nodeName '#text', so you want (el.nodeName, 
el.firstChild.nodeValue).

General tips - try the docs: 
http://docs.python.org/library/xml.dom.minidom.html
and also use dir() a lot on objects when you're learning a new api.

Hope that helps. Disclaimer: haven't used minidom in anger for some time.

Confused?  That's an understatement.  Part of the problem is that it's been 
a long time since I learned DOM and now I'm trying to cram to get this 
program done.

Anyway, your suggestion to access el.firstChild.nodeValue did the trick.

Thanks




More information about the Python-list mailing list