• Python-xml解析常用方法简介


    【XML几种解析方法】

    常见的XML编程接口有DOM和SAX,这两种接口处理XML文件的方式不同,使用场合自然也就不同。

    Python有三种方法解析XML: SAX,DOM,以及ElementTree:

    1.SAX (Simple API for XML )

    Pyhton标准库包含SAX解析器,SAX用事件驱动模型,通过在解析XML的过程中触发一个个的事件并调用用户定义的回调函数来处理XML文件。SAX是一种基于事件驱动的API。利用SAX解析XML文档牵涉到两个部分:解析器和事件处理器。
    解析器负责读取XML文档,并向事件处理器发送事件,如元素开始及结束事件;而事件处理器则负责对事件作出处理。
    优点:SAX流式读取XML文件,比较快,占用内存少。
    缺点:需要用户实现回调函数(handler)。

    2.DOM(Document Object Model)

    将XML数据在内存中解析成一个树,通过对树的操作来操作XML。一个DOM的解析器在解析一个XML文档时,一次性读取整个文档,把文档中所有元素保存在内存中的一个树结构里,之后你可以利用DOM提供的不同的函数来读取或修改文档的内容和结构,也可以把修改过的内容写入xml文件。
    优点:使用DOM的好处是你不需要对状态进行追踪,因为每一个节点都知道谁是它的父节点,谁是子节点.
    缺点:DOM需要将XML数据映射到内存中的树,一是比较慢,二是比较耗内存,使用起来也比较麻烦!

    3.ElementTree(元素树)

    ElementTree就像一个轻量级的DOM,具有方便友好的API。代码可用性好,速度快,消耗内存少。
    相比而言,第三种方法,即方便,又快速。

    From:http://www.jb51.net/article/67120.htm

  • 相关阅读:
    5月27 开通博客啦
    源码编译安装mysql-boost-5.7.16.tar.gz报错分析处理
    MHA实践操作
    (转)MySQL高可用方案MHA的部署和原理
    Mysql利用binlog日志恢复数据操作(转)
    生产环境mysql数据库主从恢复从数据库 -- flush tables with read lock;
    带着问题学习openstack
    openstack的网络模式(转)
    openstack 镜像初始化root登录密码
    openstack placement 组件作用理解
  • 原文地址:https://www.cnblogs.com/rusking/p/5107843.html
Copyright © 2020-2023  润新知