我正在使用python script来解析XML并从中创建一个python文件。
在顶层,XML看起来像;
<stage id="stage1">
<initialise>
</initialise>
<execute>
</execute>
</stage>
这是完整XML的sample。相当复杂的东西。
我已经编写了一个解析器来处理大多数事情,但在这个例子中,是否可以检查</initialise>
之前<execute>
的树,以便识别出来
您可以使用elem[x]
类型方法或XPath吗?
<initialise>
<variable id="maxLimit" value="0" type="Integer">
<validate>
<regularExpression></regularExpression>
</validate>
<execute>
</execute>
</variable>
</initialise>
<execute> # treat this differently
抓取execute元素的Python看起来像这样;
def parse_execute(self, elem):
if elem[0].tag == 'required': #or elem[0].tag == 'variable':
self.loop(elem)
else:
self.out('')
self.out('def {0}():'.format(elem.tag))
self.indent()
self.loop(elem)
self.dedent()