Python 解析XML文件etree模块
我正在使用Etree模块读取XML文件。我使用以下代码打印Python 解析XML文件etree模块,python,xml,Python,Xml,我正在使用Etree模块读取XML文件。我使用以下代码打印和标记的值。我的代码运行良好。但我要零钱。如果属性id存在,则打印标记的值。可能吗?谢谢 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
和
标记的值。我的代码运行良好。但我要零钱。如果
属性id存在,则打印标记的值。可能吗?谢谢
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)
这是我的xml文件
<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>
维基
媒体
标题
15099779
书
编辑:更新以供说明:“谢谢,我可以同时打印页面id和标题吗?表示31239628-标题”元素。get()方法用于检索标记中的选项属性值:
>>> page_id = tree.find('page').get('id')
>>> if page_id:
print page_id
31239628
谢谢,我可以同时打印
page\u id
和title
吗?表示31239628-标题
>>> page_id = tree.find('page').get('id')
>>> if page_id:
print page_id
31239628