Python 如何忽略xml文件中的特定标记?

Python 如何忽略xml文件中的特定标记?,python,xml,Python,Xml,在我的xml文件中的某个点上,我与contributor一起 <revision> <id>1</id> <timestamp>2012-10-25T15:50:18Z</timestamp> <contributor> <ip>127.0.0.1</ip> </contributor> </revision>

在我的xml文件中的某个点上,我与contributor一起

<revision>
      <id>1</id>
      <timestamp>2012-10-25T15:50:18Z</timestamp>
      <contributor>
        <ip>127.0.0.1</ip>
      </contributor>
</revision>

只需使用内置的Python,特别是其具有标记和文本属性的dom对象,您可以通过标记名对其进行调节:

第一个参与者类型:

import xml.etree.ElementTree as etree

xmlfile = '''\
<revision>
      <id>1</id>
      <timestamp>2012-10-25T15:50:18Z</timestamp>
      <contributor>
        <ip>127.0.0.1</ip>
      </contributor>
</revision>'''

dom = etree.fromstring(xmlfile)
data = dom.findall('contributor/*')

with open('output', 'w') as writingFile:
    for items in data:
        if items.tag != 'ip':
            writingFile.write(items.tag + ': ' + items.text + '\n')
# <NOTHING>
xmlfile = '''\
<revision>
      <id>2</id>
      <parentid>1</parentid>
      <timestamp>2012-10-26T20:13:56Z</timestamp>
      <contributor>
        <username>Reedy</username>
        <id>2</id>
      </contributor>
</revision>'''

dom = etree.fromstring(xmlfile)
data = dom.findall('contributor/*')

with open('output', 'w') as writingFile:
    for items in data:
        if items.tag != 'ip':
            writingFile.write(items.tag + ': ' + items.text + '\n')
# username: Reedy
# id: 2
将xml.etree.ElementTree导入为etree
xmlfile='''\
1.
2012-10-25T15:50:18Z
127.0.0.1
'''
dom=etree.fromstring(xmlfile)
data=dom.findall('contributor/*'))
以open('output','w')作为写入文件:
对于数据中的项目:
如果items.tag!='ip':
writingFile.write(items.tag+':'+items.text+'\n')
# 
第二种贡献者类型:

import xml.etree.ElementTree as etree

xmlfile = '''\
<revision>
      <id>1</id>
      <timestamp>2012-10-25T15:50:18Z</timestamp>
      <contributor>
        <ip>127.0.0.1</ip>
      </contributor>
</revision>'''

dom = etree.fromstring(xmlfile)
data = dom.findall('contributor/*')

with open('output', 'w') as writingFile:
    for items in data:
        if items.tag != 'ip':
            writingFile.write(items.tag + ': ' + items.text + '\n')
# <NOTHING>
xmlfile = '''\
<revision>
      <id>2</id>
      <parentid>1</parentid>
      <timestamp>2012-10-26T20:13:56Z</timestamp>
      <contributor>
        <username>Reedy</username>
        <id>2</id>
      </contributor>
</revision>'''

dom = etree.fromstring(xmlfile)
data = dom.findall('contributor/*')

with open('output', 'w') as writingFile:
    for items in data:
        if items.tag != 'ip':
            writingFile.write(items.tag + ': ' + items.text + '\n')
# username: Reedy
# id: 2
xmlfile=''\
2.
1.
2012-10-26T20:13:56Z
芦苇
2.
'''
dom=etree.fromstring(xmlfile)
data=dom.findall('contributor/*'))
以open('output','w')作为写入文件:
对于数据中的项目:
如果items.tag!='ip':
writingFile.write(items.tag+':'+items.text+'\n')
#用户名:Reedy
#身份证号码:2
请使用现有文件,而不是编写自己的文件。它经过了实战的考验,并被证明对更多的人有效,而不仅仅是对你。此外,如果没有为解析器编写的代码,这个问题是无法回答的。