python5月28号XML

本文介绍了XML作为数据传输和存储的方式,并重点讲解了Python中处理XML的三种方法:SAX、DOM以及ElementTree。ElementTree是Python推荐的轻量级XML API,类似于DOM但更高效。内容包括ElementTree的解析过程、节点遍历、查找和删除节点的操作。最后,通过一个简单的爬虫示例展示了XML在实际应用中的使用。
摘要由CSDN通过智能技术生成

1.XLM可标记语言:用来传输和存储数据
2.python中XML的解析方式:

SAX:SAX解析通过流模式在解析XML的过程中触发对应的事件(start_element、char_data、end_element)并调用用户定义        的回调函数来处理XML文件。

DOM:将XML数据在内存中解析成一个树,通过对树的操作来操作XML,占用内存大,解析速度较慢,优点是可以任意遍历树的节        点。

ElementTree(元素树):类似一个DOM

XML文本格式介绍:

例如:

<tag attrib=>text</tag>tail

<biaoqian channel='csdn'>hello123456789</app_key>

tag:标签,用于表示数据表示那种类型,及biaoqian

attrib:属性,用Dictionary形式保存,即{'channel'='CSDN'}

text:文本字符串,可以用来存储一些数据,即hello123456789

tail:尾字符串,可以不写

3.ElementTree解析XML文件的过程

.首先要导入模块:import xml.etree.ElementTree as ET

.解析xml文件的根节点

.加载文档到内存中:tree=ET.parse('文件名.xml')

.获取xml根节点方法: root=tree.getroot

root:根

.遍历根节点可以获取子节点

示例1:


运行结果:



4.查找指定的子节点

当XML文件中的子节点(tag)太多时,就通过find('nodeName')或者findall('nodeName')

node:节点

find('nodeName'):表示在该节点下,查找其中第一个tag(节点)为nodeName(节点名称)的节点.

findall('nodeName'):表示在该节点下,查找其中所有tag为nodeName的节点

示例2:


分析:

5.删除指定节点以及保存

通过remove(Node)来删除节点

示例3:移除attribute中name为的节点:panama



示例4:


运行结果:


6.一个简易的爬虫

一.首先要导入模快,在打开一个url
















































评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值