处理XML文件工具的选择

    由于项目需要处理XML文件,shell脚本提供了不少工具来处理文本文件,比如sed等,但是对于这种树形结构来说,shell脚本还是有点力不从心,在VM上看到自带的都有python,于是选择了python作为处理XML文件的工具,而VM自带的python版本都是2.4.3(这里考虑到VM要部署很多台,不能做定制化,所以只能利用现有的资源和版本),所以python很多新的处理XML的库用不上,于是这里选择了xm,.dom.minidom(简化的DOM)

    这里先贴上python中关于XML的介绍,XML文件的处理将在后续文章中给出:

  Python内有两种常见的方法处理XMLSAXDOMSAX语法分析器读取XML文件并且告知它发现的内容(文本,标签和特性)。由于它一次只存储文档的一小部分,所以SAX简单、快速并能有效利用内存。DOM走的则是另外一条路:它构造一个表示整个文档的数据结构(文档树)。这样会慢些并且需要更多内存,但是如果希望操作整个文档结构的话则很有用。

  除了标准的DOM处理外,标准库还包括另外两个模块:xm,.dom.minidom(简化的DOM)和 xml.dom.pulldom(SAXDOM的结合体,减少了内存需求)。

  pyRXP是个快速且简单的XML语法分析器(它并不使用DOM,但是会从XML文档中建立完整的文档住)。ElementTree则更加灵活易用。

posted on 2012-01-10 11:22  bannyle  阅读(657)  评论(0)    收藏  举报

导航