【发布时间】:2020-08-27 06:59:57
【问题描述】:
我有一个 xml 文件,我正在尝试遍历标签以将其转换为 pandas 数据框。我当前的过程是用 excel 打开 XML 文件作为“XML 表”,但这需要很长时间。试图在 Python 中找到类似的过程。
我正在尝试遵循许多其他 Stack Overflow 问题和文章中提供的代码,例如此处 here 和 here
我认为我面临两个问题:
拥有命名空间会影响我的 xml 吗?
我不想将我的所有标签都指定为 19.7.1.6 中的解决方案。的元素树文档。我只希望我的所有标签都显示为每个“安全”的列。如果它没有那个标签,它应该是空的。我也不想做一个讨厌的 if-else。
问题是当我运行代码时:
import xml.etree.ElementTree as et
etree = et.parse(xml_path)
test = etree.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>
</Security>
</SecurityInformation>
【问题讨论】:
-
你为什么不更新你原来的问题:stackoverflow.com/questions/61732011/…?您确实找到了删除链接,在同一行中还有一个 edit 链接。请不要删除和重新发布问题。这是不受欢迎的,可能会给你带来麻烦。
-
@rene 我最初编辑了这个问题,但是一旦我编辑了这个问题,就与我最初提出的问题完全不同。离开旧的(不同的)问题并发布新问题是更好的行为吗?发布一个新问题似乎更合乎逻辑。
-
@rene 谢谢。你现在不认为它们有什么不同,因为我已经改变了它。您认为目前回答我的问题的最佳途径是什么?
-
练习耐心...
-
哦,你确定在
</SecurityInformation>结束标记上有命名空间属性吗?这将是我第一次遇到这些。
标签: python xml pandas elementtree