Python中的XML处理

我将要构建一个项目,该项目需要构造XML文档并将其发布到Web服务,并且我想用Python来完成它,以此来扩展我在其中的技能。

不幸的是,尽管我对.NET相当了解XML模型,但是我不确定Python中XML模型的优缺点。

任何人都有使用Python处理XML的经验吗?你会建议我从哪里开始?我将要构建的XML文件将非常简单。


阿晨1998
浏览 246回答 3
3回答

弑天下

我已经将ElementTree用于多个项目并推荐它。它是pythonic,随Python 2.5一起提供,包括c版本cElementTree(xml.etree.cElementTree),它比纯Python版本快20倍,并且非常易于使用。lxml具有一些性能优势,但是它们并不平衡,因此您应该首先检查一下用例的基准测试。据我了解,ElementTree代码可以轻松移植到lxml。

牛魔王的故事

这取决于文件的复杂程度。我在编写XML时经常使用minidom,但是通常只是读取文档,进行一些简单的转换,然后再写回。在我需要排序元素属性的能力之前,这已经足够好了(以满足无法正确解析XML的古老应用程序)。那时我放弃了,自己写了XML。如果您只处理简单的文档,那么比学习框架更快,更简单。如果可以想象手动编写XML,那么也可以手动编写XML(只是要记住正确地转义特殊字符并使用str.encode(codec, errors="xmlcharrefreplace"))。除了这些麻烦之外,XML非常普通,因此您不需要特殊的库来编写它。如果文档太复杂而无法手工编写,那么您可能应该研究一下已经提到的框架之一。您根本不需要编写通用的XML编写器。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python