如何使用ElementTree修改getroot()返回的根?

我有一个xml文件,正在尝试遍历标签以将其转换为pandas数据框。我相信我应该重复使用的根标签是“安全”标签,该标签具有包含其他信息(例如-国家)的不同子节点。

问题是当我运行代码时:

etree = et.parse(xml_path)
test = etree.getroot()

我的根对象成为文件中的此额外头,而不是“安全性”。有没有办法我可以覆盖此额外的标头并利用“安全性”作为根标记?然后,这将使我能够遍历安全性根标记下的不同子标记和属性。

我已经研究了类似于您在read_csv中执行的跳过方式,但是在parse或getroot()中似乎没有任何内容(实际上,该标记也将出现在文件的底部)。有其他选择的想法吗?

样本文件:

<?xml version="1.0"?>
<SecurityInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://tempuri.org/SecurityInformation.xsd">
    <Security>
        <Country>United States</Country>
评论