解析空白XML标记时,格式为XML文档解析:与LXML和Python
<Car>
<Color>Blue</Color>
<Make>Chevy</Make>
<Model>Camaro</Model>
</Car>
我使用下面的代码:
carData = element.xpath('//Root/Foo/Bar/Car/node()[text()]')
parsedCarData = [{field.tag: field.text for field in carData} for action in carData]
print parsedCarData[0]['Color'] #Blue
此代码不会,如果一个标签是空的工作如:
<Car>
<Color>Blue</Color>
<Make>Chevy</Make>
<Model/>
</Car>
使用相同的代码如上:
carData = element.xpath('//Root/Foo/Bar/Car/node()[text()]')
parsedCarData = [{field.tag: field.text for field in carData} for action in carData]
print parsedCarData[0]['Model'] #Key Error
我该如何解析这个空白标记。
现在我正在做一个'element = etree.parse(xmlfile)'。 iterparse如何改变我现有的代码库? – lodkkx 2012-03-08 15:39:50
@lodkkx使用iterparse如下所示:lxml.etree.iterparse(xmlfile):...中的for(event_type,element):决定每个元素依次执行什么操作(通常是通过检查其标记)。 – 2012-03-08 15:46:52