使用python ElementTree解析未知元素的xml文件

Mar*_*kus 3 python elementtree xml-parsing

我希望从多用途xml文件中提取所有标记名称及其相应的数据.然后将该信息保存到python字典中(例如tag = key,data = value).标签名称和值的标记是未知的,数量未知.

    <some_root_name>
        <tag_x>bubbles</tag_x>
        <tag_y>car</tag_y>
        <tag...>42</tag...>
    </some_root_name>
Run Code Online (Sandbox Code Playgroud)

我正在使用ElementTree并且可以成功提取根标记,并且可以通过引用标记名称来提取值,但是无法在不引用标记名称的情况下找到简单地迭代标记和数据的方法.

任何帮助都会很棒.

谢谢.

Kri*_*fer 7

from lxml import etree as ET

xmlString = """
    <some_root_name>
        <tag_x>bubbles</tag_x>
        <tag_y>car</tag_y>
        <tag...>42</tag...>
    </some_root_name> """

document = ET.fromstring(xmlString)
for elementtag in document.getiterator():
   print "elementtag name:", elementtag.tag
Run Code Online (Sandbox Code Playgroud)

编辑:从文件而不是从字符串读取

document = ET.parse("myxmlfile.xml")
Run Code Online (Sandbox Code Playgroud)