gpt4 book ai didi

python - 如何提取 XML 特定值字段并列出它们?

转载 作者:数据小太阳 更新时间:2023-10-29 02:51:16 25 4
gpt4 key购买 nike

我有一堆 XML 文件(大约 74k),它们具有这种结构:

<?xml version="1.0" encoding="UTF-8"?><article pmcid="2653499" pmid="19243591" doi="10.1186/1472-6963-9-38">
<title>Systematic review</title>
<fulltext>...</fulltext>
<figures>
<figure iri="1472-6963-9-38-2"><caption>...</caption></figure>
<figure iri="1472-6963-9-38-1"><caption>...</caption></figure>
</figures>
</article>

我想将 pmcid 参数(每个文件是唯一的)与它们包含在列表中的图形的 iri 参数相关联,这样我就可以用它们构建一个 numpy 数组,甚至是一个易于使用的文件。

例如对于这篇文章,该行应该是:

2653499 1472-6963-9-38-2 1472-6963-9-38-1

我已经尝试过使用 XSLT,但没有任何结果……如果有任何帮助,我将不胜感激。

最佳答案

这是一个使用 xml.etree.ElementTree 的选项来自标准库:

import xml.etree.ElementTree as ET

data = """<?xml version="1.0" encoding="UTF-8"?>
<article pmcid="2653499" pmid="19243591" doi="10.1186/1472-6963-9-38">
<title>Systematic review</title>
<fulltext>...</fulltext>
<figures>
<figure iri="1472-6963-9-38-2"><caption>...</caption></figure>
<figure iri="1472-6963-9-38-1"><caption>...</caption></figure>
</figures>
</article>
"""

article = ET.fromstring(data)

pmcid = article.attrib.get('pmcid')
for figure in article.findall('figures/figure'):
iri = figure.attrib.get('iri')
print pmcid, iri

打印:

2653499 1472-6963-9-38-2
2653499 1472-6963-9-38-1

关于python - 如何提取 XML 特定值字段并列出它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25276672/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com