【发布时间】:2012-09-25 11:56:14
【问题描述】:
标准安装提供的python中有很多处理XML的方法,甚至更多作为外部包,参见http://wiki.python.org/moin/PythonXml。
对于我的项目,我使用minidom,它可以满足我的需要,但错误报告是相当电报的,例如:
no element found: line 7, column 0
这是正确的,但不是很可读,没有提示可能需要哪个元素。由于缺乏信息,我无法向用户报告错误。
这只是一个示例,但在更多情况下 minidom 可以更详细,但事实并非如此。所以我需要一些详细的东西,一个足够详细的错误,我可以将解析错误传回给用户。
如果没有哪个用于支持 XML 的外部包有,那么哪些标准 XML“处理解决方案”具有最详细的错误报告?
用于解析的xml文件,代码中使用config.xml为:
<?xml version="1.0" encoding="UTF-8"?>
<widget xmlns="http://www.w3.org/ns/widgets">
<icon src="icon.png"/>
<content src="index.html"/>
<name>sample</name>
【问题讨论】:
-
你为什么不试试呢?一个带有 BeautifulSoup 和 lxml 的 virtualenv 很快就设置好了。
-
@MartijnPieters 可能我会这样做,但我认为我不应该重新发明轮子并先问。
-
@MartijnPieters 重新发明了意志,尝试了一些解析器,看到答案,你对 lxml 是正确的。
标签: python xml xml-parsing python-2.7 minidom