正在分析XML文件etree modu

2024-10-01 13:44:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Etree模块读取XML文件。Im使用以下代码打印<page><title>标记的值。我的代码运行良好。但我要零钱。如果<page id='...'>属性id存在,则打印tag的值。有可能吗?谢谢

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文件。在

^{pr2}$

Tags: 文件inimportidtreefortitlevalue
2条回答

元素.get()方法用于检索标记中的选项属性值:

>>> page_id = tree.find('page').get('id')
>>> if page_id:
        print page_id

31239628
for el in tree.getiterator(tag='page'):
    page_id = el.get('id', None) # returns second arg if id not exists
    if page_id:
        print page_id, el.find('title').text
    else:
        pprint(el.attrib)

相关问题 更多 >