我们,我有一个xml结构,看起来有点像这样。
<abstract>
<p id = "p-0001" num = "0000">
blah blah blah
</p>
</abstract>
我想仅在<p>
标记中提取<abstract>
标记。
我试过了:
import xml.etree.ElementTree as ET
xroot = ET.parse('100/A/US07640598-20100105.XML').getroot()
for row in xroot.iter('p'):
print row.text
这会获取我的xml中的所有<p>
标记,这不是一个好主意。
无论如何,我可以提取
中的文字我的欲望输出将提取&#34;等等等等等等等。
答案 0 :(得分:2)
您可以使用 XPath表达式在p
内专门搜索abstract
元素:
for p in xroot.xpath(".//abstract//p"):
print(p.text.strip())
或者,如果使用iter()
,您可能会有一个嵌套循环:
for abstract in xroot.iter('abstract'):
for p in abstract.iter('p'):
print(p.text.strip())