python之XML模块

来源:互联网 发布:mysql blob最大长度 编辑:程序博客网 时间:2024/06/05 09:18

XML是实现不同语言或不同程序之间数据交换的协议。

我们通过浏览器访问资源时,服务端返回给我们数据的格式,通常为json,HTML以及XML等三种格式的数据。

json数据通过json模块的loads和dumps可以进行数据的序列化和反序列化。

HTML格式的数据浏览器可以直接解释运行

XML格式的数据我们可以通过python中XML模块进行解析和修改。


对于XML数据的解析方式可以分为两类,通过服务端传回来的数据直接进行解析或者通过储存的XML文件进行解析。

#! /usr/bin/env python# -*- coding:utf-8 -*-"""xml对象常见的属性tag返回标签的名字text返回标签的内容attrib标签的属性append 为当前节点追加子节点remove 为当前节点的子节点中删除指定节点get 获取当前节点的属性值set 为当前节点设置属性值直接操作字符串的方式如果对xml类型文件想要保存,必须通过根节点生成一个ElementTree对象,通过调用其write方法进行写入保存""""""创建xml文件的方式1.通过类的构造方法直接创建节点 Element.Element()2.通过makeelement()3.通过Element.SubElement()"""from xml.etree import ElementTreeimport requestsresponse = requests.get("url")response.encoding = "utf-8"ret = response.text#将字符串解析为xml对象root = ElementTree.XML(ret)#直接通过本地的xml文件进行操作tree = ElementTree.parse("*.xml")root = tree.getroot()#遍历操作for node in root:    print(node.tag, node.attrib, node.tag)    #查找指定名字的Elemetn节点    for node2 in node.iter("tag_name"):        print(node2.tag, node2.text, node2.attrib)        #设置属性        node2.set("key", "value")        #删除属性        del node2.attrib["key"]




原创粉丝点击