我正在寻找一个易于处理的python本机模块来从xml创建python对象表示.
我通过谷歌找到了几个模块(其中一个是XMLObject),但不想尝试所有这些模块.
您认为做这些事情的最佳方式是什么?
编辑:我错过了提到我想要阅读的XML不是由我生成的.它是一个我无法控制的结构中的现有XML文件.
你说你想要一个对象表示,我会解释为表示节点成为对象,节点的属性和子节点表示为对象的属性(可能根据某些Schema).我相信这就是XMLObject所做的.
我知道有一些包. 4Suite包含了一些工具,我相信Amara专门实现了这一点(建立在4Suite之上).你也可以使用lxml.objectify,它的灵感来自Amara和gnosis.xml.objectify.
当然第三个选项是,给定XML的具体表示(使用ElementTree或lxml),您可以围绕它构建自己的自定义模型. lxml.html就是一个例子,它扩展了lxml的基本接口,并带有一些特定于HTML的功能.
我的第二个建议是xml.etree.ElementTree,主要是因为它现在在stdlib中.还有一个更快的实现,xml.etree.cElementTree也可用.
如果你真的需要表现,我会建议lxml
http://www.ibm.com/developerworks//xml/library/x-hiperfparse/