<p>因此,您需要了解XML的结构,然后使用要查找的实际标记,而不是“Data”</p>
<pre><code> item = element.find('Item')
print(item.tag ,":",item.text)
value = element.find('Value')
print(value.tag ,":",value.text)
</code></pre>
<p>您的实际问题是需要更改所使用的导入。在</p>
^{pr2}$
<p><a href="https://docs.python.org/2/library/xml.etree.elementtree.html" rel="nofollow">https://docs.python.org/2/library/xml.etree.elementtree.html</a></p>
<p><strong>编辑:</strong>使用结构化的方式,您可以通过</p>
<pre><code>for data in root.findall('Data'):
item = data.find('Item')
print(item.tag ,":",item.text)
value = data.find('Value')
print(value.tag ,":",value.text)
</code></pre>
<p>现在,了解如果“Data”标记不在根级别,那么您需要根目录。查找()直到你能做到。换句话说,如果这些“Data”标记包含在一些父标记中,则需要根目录。查找(“家长标签”),希望你能理解它的要点</p>
<p><strong>Edit2:</strong>看了我自己的msinfo.nfo公司文件和这个有效:</p>
<pre><code>disks = root.find(".//Category[@name='Disks']")
for disk in disks:
item = disk.find('Item')
print(item.tag ,":",item.text)
value = disk.find('Value')
print(value.tag ,":",value.text)
</code></pre>
<p>注意:这使用XPath语法来查找元素,它只在ElementTree1.3(python2.7及更高版本)中可用。您还可以通过遵循XML的结构并遍历树直到到达磁盘,来强制执行它。路径为System Summary->;Components->;Storage->;Disks和under Disks是那些以Item和Value作为子级的数据元素。在</p>