使用元素树打印XML标签属性
我正在使用以下语句来打印标题标签的值,运行得很好。不过我还想打印 <page id='...' .......
这个内容,这可能吗?谢谢!
<mediawiki>
<siteinfo>
<sitename>Wiki</sitename>
<namespaces>
<namespace key="-2" case="first-letter">Media</namespace>
</namespaces>
</siteinfo>
<page id="31239628" orglength="6822" newlength="4524" stub="0" categories="0" outlinks="1" urls="10">
<title>Title</title>
<categories></categories>
<links>15099779</links>
<urls>
</urls>
<text>
Books
</text>
</page>
</mediawiki>
这是我正在使用的代码,它可以打印标题标签的值。
import xml.etree.cElementTree as etree
tree = etree.parse('find_title.xml')
for value in tree.getiterator(tag='title'):
print value.text
1 个回答
2
你可以试试下面这个:
import xml.etree.cElementTree as etree
from pprint import pprint
tree = etree.parse('find_title.xml')
for value in tree.getiterator(tag='title'):
print value.text
for value in tree.getiterator(tag='page'):
pprint(value.attrib)
它应该会输出类似这样的内容:
$ python file.py
Title
{'categories': '0',
'id': '31239628',
'newlength': '4524',
'orglength': '6822',
'outlinks': '1',
'stub': '0',
'urls': '10'}