文中案例叙述了Python minidom控制模块使用方法。共享给大伙儿供大伙儿参照,实际以下: 一、DOM写XML文档 # -*- coding:utf-8 -*- #!python3 #导进minidom from xml.dom import minidom # 1.建立DOM树目标 dom=minidom.Document() # 2.建立根连接点。每一次必须用DOM目标来建立一切连接点。 root_node=dom.createElement('root') # 3.用DOM目标加上根连接点 dom.appendChild(root_node) # 用DOM目标建立原素子连接点 book_node=dom.createElement('book') # 用父连接点目标加上原素子连接点 root_node.appendChild(book_node) # 设定该连接点的特性 book_node.setAttribute('price','199') name_node=dom.createElement('name') root_node.appendChild(name_node) # 也用DOM建立文字连接点,把文字连接点(文本內容)当做子连接点 name_text=dom.createTextNode('测算机编程设计語言 第一版') # 用加上了文字的连接点目标(当做文字连接点的父连接点)加上文字连接点 name_node.appendChild(name_text) # 每个节点目标(包含dom目标自身)都是有輸出XML內容的方式,如:toxml()--标识符串, toprettyxml()--清理树型文件格式。 with open('dom_write.xml','w',encoding='UTF-8') as fh: # 4.writexml()第一个主要参数是总体目标文档目标,第二个主要参数是根连接点的缩近文件格式,第三个主要参数是别的子连接点的缩近文件格式, # 第四个主要参数制订了换行文件格式,第五个主要参数制订了xml內容的编号。 dom.writexml(fh,indent='',addindent='\t',newl='\n',encoding='UTF-8') print('载入xml OK!') except Exception as err: print('不正确信息内容:{0}'.format(err)) 转化成的dom_write.xml文档結果以下: ?xml version="1.0" encoding="UTF-8"? root book price="199"/ name 测算机编程设计語言 第一版 /name /root 二、DOM分析XML文档 # -*- coding:utf-8 -*- #!python3 from xml.dom import minidom with open('dom_write.xml','r',encoding='utf8') as fh: # parse()获得DOM目标 dom=minidom.parse(fh) # 获得根连接点 root=dom.documentElement # 连接点名字 print(root.nodeName) # 连接点种类:'ELEMENT_NODE',原素连接点; 'TEXT_NODE',文字连接点; 'ATTRIBUTE_NODE',特性连接点 print(root.nodeType) # 获得某一连接点下全部子连接点,是个目录 print(root.childNodes) # 根据dom目标或根原素,再依据标识名获得原素连接点,是个目录 book=root.getElementsByTagName('book')[0] # 获得连接点特性 print(book.getAttribute('price')) # 获得某一原素连接点的文字內容,先获得子文字连接点,随后根据“data”特性获得文字內容 name=root.getElementsByTagName('name')[0] name_text_node=name.childNodes[0] print(name_text_node.data) # 获得某连接点的父连接点 print(name.parentNode.nodeName) 运作輸出: root PS:这儿再为大伙儿出示几种有关xml实际操作的线上专用工具供大伙儿参照应用: 线上XML/JSON相互之间变换专用工具: 线上文件格式化XML/线上缩小XML: XML线上缩小/文件格式化工厂具: XML编码线上文件格式化清理专用工具: 大量有关Python有关內容很感兴趣的阅读者能查看本网站专题讲座:《Python实际操作xml数据信息方法小结》、《Python数据信息构造与优化算法实例教程》、《Python Socket程序编写方法小结》、《Python涵数应用方法小结》、《Python标识符串实际操作方法归纳》、《Python新手入门与升阶經典实例教程》及《Python文档与文件目录实际操作方法归纳》 期待文中上述对大伙儿Python编程设计有一定的协助。 (责任编辑:admin) |