处理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内有两种常见的方法处理XML:SAX和DOM。SAX语法分析器读取XML文件并且告知它发现的内容(文本,标签和特性)。由于它一次只存储文档的一小部分,所以SAX简单、快速并能有效利用内存。DOM走的则是另外一条路:它构造一个表示整个文档的数据结构(文档树)。这样会慢些并且需要更多内存,但是如果希望操作整个文档结构的话则很有用。
除了标准的DOM处理外,标准库还包括另外两个模块:xm,.dom.minidom(简化的DOM)和 xml.dom.pulldom(SAX和DOM的结合体,减少了内存需求)。
pyRXP是个快速且简单的XML语法分析器(它并不使用DOM,但是会从XML文档中建立完整的文档住)。ElementTree则更加灵活易用。
浙公网安备 33010602011771号