Python中的XML解析

12 投票
5 回答
11239 浏览
提问于 2025-04-15 14:03

我想用Python来解析一个简单的小XML文件,不过pyXML这个库好像已经不再更新了。如果可以的话,我想用Python 2.6。有没有人能推荐一个可以在2.6上使用的XML解析器?

谢谢!

5 个回答

5

这里有一个很好的例子,教你怎么使用minidom,并且还有详细的解释,点击这里可以查看。

6

在我大多数的工作中,我使用了Minidom这个轻量级的DOM实现,具体可以在官方网站找到:

from xml.dom.minidom import parse, parseString

dom1 = parse('c:\\temp\\mydata.xml') # parse an XML file by name

datasource = open('c:\\temp\\mydata.xml')
dom2 = parse(datasource)   # parse an open file

dom3 = parseString('<myxml>Some data<empty/> some more data</myxml>')
19

如果你的需求简单又小,那就直接使用标准库吧:

from xml.dom.minidom import parse
doc = parse("filename.xml")

这样做会返回一个DOM树,这个树是按照标准的文档对象模型API来实现的。

如果你以后需要做一些复杂的事情,比如模式验证或者XPath查询,我推荐使用第三方的lxml模块,它是一个对流行的libxml2 C库的封装。

撰写回答