【问题标题】:Parsing out data in an XML file using Python使用 Python 解析 XML 文件中的数据
【发布时间】:2011-07-09 05:04:00
【问题描述】:

我有一个 xml 文件,我需要在其中去除 xml 标签,如果可能的话,我可以使用通配符,因为标签中的数据将是不同的信息。请参阅下面的 xml:

 <relationship relation="1">
        <sourcedid>
            <source>xxxxx</source>
            <id>AbDT-1398</id>  ***this data will be different for each grouping****
        </sourcedid>
        <label/>
    </relationship>

基本上我需要在 xml 文件中搜索分组,并在标签中包含通配符并删除整个分组。在我的 xml 中列出了标签,但数据是变化的。

【问题讨论】:

  • 您的问题有点不清楚,您是否正在搜索要从文件中删除的部分?
  • 您的预期输出是什么?你试过BeautifulSoup吗?

标签: python xml xml-parsing


【解决方案1】:

如果我没听错的话,你想从你的 xml 文件中删除某些标签(以及最终它们的内容)。尝试使用 lxml 处理 lxml 文件。查看 lxml.etree 中的这些函数。

使用提供的删除所有元素 来自树或子树的标签名称。这 将删除元素及其 整个子树,包括他们所有的 属性、文本内容和 后代。

这将删除元素和 他们的属性,但不是他们的 文本/尾部内容或后代。 相反,它将合并文本 元素的内容和子元素 进入其父级。

这就是你要找的吗?如果是,有nice answer on SO 你应该看看。

【讨论】:

  • 我不想合并内容,我需要从xml中删除内容。在我的 xml 示例中,我需要使用以下内容删除所有数据: xxxxxAbDT-1398 ***此数据将是每个分组不同**** 标签将具有唯一数据,因此我需要删除该分组。
  • @Nmayo:什么是“分组”?请通过编辑您的问题来澄清您的问题。
  • 感谢各位的帮助。能够弄清楚如何删除 标签
  • @Nmayo:不客气!如果我的建议对您有所帮助,请随时接受答案。如果您提出自己的想法,请在下方回答您的问题并接受它,这样有类似问题/问题的人可以从中受益。 :)
猜你喜欢
  • 2015-02-14
  • 2021-01-20
  • 1970-01-01
  • 1970-01-01
  • 2021-11-15
  • 1970-01-01
  • 1970-01-01
  • 2014-07-08
相关资源
最近更新 更多