【发布时间】:2011-04-07 06:08:03
【问题描述】:
我必须使用 python 的 minidom 解析以下 XML 文档:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<bash-function activated="True">
<name>lsal</name>
<description>List directory content (-al)</description>
<code>ls -al</code>
</bash-function>
<bash-function activated="True">
<name>lsl</name>
<description>List directory content (-l)</description>
<code>ls -l</code>
</bash-function>
</root>
这是我试图解析的代码(基本部分):
from modules import BashFunction
from xml.dom.minidom import parse
class FuncDoc(object):
def __init__(self, xml_file):
self.active_func = []
self.inactive_func = []
try:
self.dom = parse(xml_file)
except Exception as inst:
print type(inst)
print inst.args
print inst
不幸的是,我遇到了一些错误。这是堆栈跟踪:
<class 'xml.parsers.expat.ExpatError'>
('no element found: line 1, column 0',)
no element found: line 1, column 0
作为一个python初学者,能否请您指出问题的根源。
【问题讨论】:
-
如何调用 FuncDoc?该示例实际上对我来说很好(至少没有例外)
-
-1 不提供信息
-
@Ivo van der Wijk,可能是因为我 24/24 在电脑前。我也不认为这方面很重要。我想我调用 FuncDom 的构造函数是很合乎逻辑的。
-
如果我理解正确的话,当您再次创建一个具有相同文件对象的新实例时会出现问题,而不是第一次。非常相关。
标签: python parsing dom minidom