栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python 读取xml格式文件,可以读取xml中的注释内容

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python 读取xml格式文件,可以读取xml中的注释内容

文章目录

前言一、使用的模块二、使用步骤

1.引入库2.读入数据 总结


前言

最近接收到一个任务,把我们写的xml格式的自动化脚本,特定的标签增加guid标识,依次来区分案例,中间出现了一个问题:经过程序处理后的xml文件中的注释全部消失了,针对次问题特此记录问题解决方案。


一、使用的模块

xml.etree.ElementTree
xml.etree.ElementTree模块实现了一个解析和创建XML数据的简单而高效的API。XML是一种固有的分层数据格式,最自然的表示方法是使用树。通常,与整个文档的交互(读写文件)是用ElementTree完成的,与单个XML元素及其子元素的交互是用Element完成的。并不是输入xml的所有元素都会出现在最终的树中。目前会忽略输入xml中的注释、处理指令以及文档类型声明。但是可以使用API在构建的树中包含注释、处理指令,并输出到xml文件中。可以通过向XMLParser构造函数传递自定义的TreeBuilder实例来访问文档类型声明。

二、使用步骤 1.引入库
from xml.etree import ElementTree
import xml.etree.ElementTree as ET
2.读入数据

xml内容


	
		
			
				{{seq_no}}
			
			
				
					000000
				
				
					交易成功
				
			
		
	

封装可以读取xml注释的方法

# 可以读取xml中的注释内容
class CommentedTreeBuilder(ElementTree.TreeBuilder):
    def __init__(self, *args, **kwargs):
        super(CommentedTreeBuilder, self).__init__(*args, **kwargs)

    def comment(self, data):
        self.start(ElementTree.Comment, {})
        self.data(data)
        self.end(ElementTree.Comment)
 
 def read_xml(in_path):
    # 读取文件,并带有注释
    parser = ET.XMLParser(target=CommentedTreeBuilder())
    tree = ElementTree.parse(in_path, parser=parser)
    return tree

if __name__ == '__main__':
    path = r'E:工作interfaceprojecttesttestcaseTCP挡板tcp挡板设置.xml'
    tree = read_xml(path)

总结

常用方法:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/767015.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号