Can't find elements using ElementTree find method
Brendan Simon (eTRIX)
brendan.simon at etrix.com.au
Tue Aug 31 04:49:53 EDT 2010
I am trying to use ElementTree (with Python 2.7) and can't seem to find
elements at the top level. The find() and findall() methods seem to
find elements within the top level, but not if it the elements are at
the top level.
How do I find top level elements ??
Here is my code.
import xml.etree.ElementTree as ET
xml = '''\
<?xml version="1.0" encoding="Windows-1252" ?>
<components>
<component>
<name>Fred</name>
<location>Australia</location>
</component>
</components>
'''
root = ET.fromstring( xml )
### This pattern is not found :(
comps = root.find( './/components' )
### These patterns are found ok :)
comp = root.find( './/component' )
name = root.find( './/name' )
print 'comps =', comps
print 'comp =', comp
print 'name =', name
Thanks, Brendan.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20100831/82768b10/attachment.html>
More information about the Python-list
mailing list