一、什么是xml文件?
xml即可扩展标记语言,它可以用来标记数据、定义数据类型、是一种允许用户对自己的标记语言进行定义的源语言
从结构上,很像HTML超文本标记语言。但被设计的目的是不同的,具体如下:
XML被设计用来传输和存储数据
HTML被设计用来显示数据
<?xml version="1.0" encoding="utf-8"?>
<note>
<to id='0001'>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</note>
xml特征:
1、它是有标签对组成,<aa></aa>
2、标签可以有属性:<aa id='123'></aa>
3、标签对可以嵌入数据:<aa>abc</aa>
4、标签可以嵌入子标签(具有层级关系)
xml文件结构
1、xml文档形成了一种树结构,它从“根部”开始,然后扩展到“枝叶”
2、第一行是xml声明。它定义xml的版本(1.0)和所使用的编码
3、<note>是根元素,也称为根节点
4、<to><from><heading><body>是子元素(子节点)
5、xml文档必须包含根元素,该元素是所有其他元素的父元素
二、python对XML的解析
常见的XML编程接口有DOM和SAX,这两种接口处理XML文件的方式不同,使用的场合也不同
python有三种方法解析:XML、SAX、DOM,以及ElementTree :
1、SAX(simple API for XML)
python标准库包含SAX解析器,SAX用事件驱动模型,通过在解析XML的过程中触发一个个的时间并调用用户定义的回调函数来处理XML文件
2、DOM(Document Object Model)文档对象模型
DOM就是针对 html 和xml 提供一个api,为了能以编程的方法操作这个html的内容(比如添加某些元素、修改元素的内容、删除某些元素),把 html 或 xml 看做一个对象树,它本身和里面的所有东西比如<div></div> 这些标签都看做一个对象,每个对象都叫做一个节点(node)
DOM有什么用?
就是为了操作 html 或 xml 中的元素,比如:我们要通过JS把这个网页的标题改了
document.title = 'python' ;
3、Element Tree(元素树)
ElementTree就像一个轻量级的DOM,具有方便友好的API。代码可用性好,速度快,消耗内存少
注:因DOM需要将XML数据映射到内存中的树,一是比较慢,二是比较消耗内存,而SAX流式读取XML文件,比较快,占用内存少,但需要用户实现回调函数
最后
以上就是落后康乃馨最近收集整理的关于pythonXML文件概述_1.21的全部内容,更多相关pythonXML文件概述_1内容请搜索靠谱客的其他文章。
发表评论 取消回复