I'm attempting to parse a fairly sizeable xml file (it's the ebay "category tree" report. I've cached a copy at http://www.crackrabbit.com/misc/CatTree.xml). 900K or so! :-)
For some reason I'm unable to read any elements from the file. I have no problems with Asraramed's example. (I'm not attempting to extract values here, just to make sure that there is actual parsing going on!)
#!/usr/bin/env python2.4
from elementtree import ElementTree as et
tree = et.parse("kadri.xml")
companies = tree.findall('company')
for c in companies:
print c
which gives me:
<Element company at -74207a74>
<Element company at -74207774>
<Element company at -74207614>
Cool beans. There's something in there!
Now when I attempt the same with the data found at the above link:
#!/usr/bin/env python2.4
from elementtree import ElementTree as et
tree = et.parse('CatTree.xml')
categories = tree.findall("CategoryArray")
for cat in categories:
print cat
I receive nothing.
I've made a smaller version that I could easily get me brain around:
<?xml version="1.0" encoding="UTF-8"?>
<GetCategoriesResponse xmlns="urn:ebay:apis:eBLBaseComponents">
<Timestamp>2006-11-07T07:45:40.908Z</Timestamp>
<Ack>Success</Ack>
<Version>485</Version>
<Build>e485_core_Bundled_3782281_R1</Build>
<CategoryArray>
<Category>
<BestOfferEnabled>true</BestOfferEnabled>
<CategoryID>6000</CategoryID>
<CategoryLevel>1</CategoryLevel>
<CategoryName>eBay Motors</CategoryName>
<CategoryParentID>6000</CategoryParentID>
<Expired>false</Expired>
<IntlAutosFixedCat>false</IntlAutosFixedCat>
<LeafCategory>false</LeafCategory>
<Virtual>false</Virtual>
<ORPA>false</ORPA>
<LSD>true</LSD>
</Category>
</CategoryArray>
</GetCategoriesResponse>
which also seems to parse cleanly and appears to be similar to what Asraramed had constructed, but still does not yeild any results no matter which element I attempt to find with findall().
What am I doing wrong? Thanks!
On 11/9/06, John Fouhy <[EMAIL PROTECTED]> wrote:
On 10/11/06, Asrarahmed Kadri <[EMAIL PROTECTED]> wrote:
> I am trying to parse XML documents using elementtree.
> I have just started with it. Can somebody help me with how to select nodes
> with a particular atribute set to some value. For example, I have the
> following file. Now I want to access the founder element of the company
> whose attribute is set to 'ndtv'. Can somebody help me with this?
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor