批量改写xml文件内容

代码略

xml.etree.ElementTree(简称ET)

xml.etree.ElementTree模块实现了一个简单而高效的API用于解析和创建XML数据。实际上,xml.etree.ElementTree可以用于处理任何树结构的数据,但最常用于处理XML文档。

1、导入ET

两种导入方式:

①import xml.etree.ElementTree

②import xml.etree.cElementTree(速度更快一点)

如果不确定环境中是否有cElementTree,可以使用如下方式导入:

try: 
    import xml.etree.cElementTree as ET
except ImportError:
    import xml.etree.ElementTree as ET

2、解析XML

有两种方式可以解析XML文件:

①从文件中解析XML文件

import xml.etree.cElementTree as ET

tree = ET.ElementTree(file = 'xml路径')
root = tree.getroot() #获取根节点
import xml.etree.ElementTree as ET

tree = ET.parse('xml文件路径')
root = tree.getroot() #获取根节点


#或者
tree = ET.ElementTree()
tree.parse('xml文件路径')
root = tree.getroot()
import xml.etree.ElementTree as ET

data = open('xml文件路径').read()
root = ET.fromstring(data)

read()读取文件中所有的内容,并将其作为一个字符串输出。

fromstring()函数将字符串转换为一个Element,解析树的根节点。

3、

节点.tag——节点名

节点.attrib——节点属性

节点.get('属性名字')——查找相符的节点属性

节点.text——节点文本

节点.tail——节点附加文本

节点[:]——子节点列表

len(节点)——统计子节点个数

4、

节点.findall('子节点名字')——(非递归)查找节点下所有相符的子节点,返回列表

节点.iter('子节点名字')——(递归)查找所有相符的子节点,返回列表

节点.find('子节点名字')——查找节点下第一个相符的子节点

节点.findtext('子节点名字')——查找节点下第一个相符的字节点并返回其text值

5、通过下标直接访问节点

root[0][1]:根节点下的第一个节点下的第二个节点

6、tree.write()写出xml文本

发布了75 篇原创文章 · 获赞 9 · 访问量 9593

猜你喜欢

转载自blog.csdn.net/ly_twt/article/details/103799001