如何使用NameSpaces查找或获取XML中的嵌套元素

时间:2019-05-24 09:20:34

标签: xml python-3.x xml-parsing

我想使用Python3访问XML元素和属性,而我使用xml.etree.ElementTree。如何使用Python查找嵌套元素?

我尝试使用Python 3,尝试使用没有命名空间的简单xml。

<?xml version="1.0" encoding="UTF-8"?>
<Contents xmln="http://www.w3.org/TR/html4/">
    <DescriptiveContent Code="103852" Name="Montana">
        <info>
            <Category Code="1010"/>
        </info>
        <Descriptions>
            <text>TEXT 1</text>
            <text>TEXT 2</text>
        </Descriptions>
    </DescriptiveContent>
</Contents>
def parseXML(xmlfile): 
    tree = ET.parse(xmlfile)
    root = tree.getroot()
    inserts=[]
    ns = {'oly_ns': 'http://www.w3.org/TR/html4/'}
    for content in root.find('{http://www.w3.org/TR/html4/}DescriptiveContent'):
        print(content.tag,content.attrib)
        for hd in content.find('{http://www.w3.org/TR/html4/}info'):
            print(hd.tag,hd.attrib)
            #hc = hd.find('{http://www.w3.org/TR/html4/}Category')
            for x in hd.find('{http://www.w3.org/TR/html4/}Category'):
                print(x)

我想找到以下元素及其值:
1.)DescriptioniveContent / @ Code = 103852
2.)DescriptioniveContent / @ Category = Montana
3.)info / Category / @ Code = 1010
4.)描述/文字= TEXT1 ....

0 个答案:

没有答案