我有一个非常大的xml文件来解析并从中获取数据。当谈到节点和元素解析和提取时,我有点不自信。 基本上,大型xml中的小部分位于
之下<fx:SIGNAL ID="dsffds" ho:OID="sdfdfdf">
<ho:SHORT-NAME>SOME_STAT_VALUE</ho:SHORT-NAME>
<ho:LONG-NAME xml:lang="de">SOME German Text</ho:LONG-NAME>
<ho:LONG-NAME xml:lang="en">SOME English Text</ho:LONG-NAME>
<ho:DESC xml:lang="de" TYPE="Standard">LogicalInterface:ACD.POWERTRAIN.SpeedAccelerationDistance[external]@Fahren;</ho:DESC>
<fx:ELEMENT-REVISIONS></fx:ELEMENT-REVISIONS>
<fx:CODING-REF ID-REF="435435xvdx"/>
<fx:MANUFACTURER-EXTENSION xsi:type="acd:MANUFACTURER-SIGNAL-EXTENSION"></fx:MANUFACTURER-EXTENSION>
</fx:SIGNAL>
到目前为止,我可以获取短名称的值
shortname_lst = xmldoc.getElementsByTagName('ho:SHORT-NAME')
for shortname in shortname_lst:
print(shortname.firstChild.nodeValue)
但我需要检查short_name是否符合我的兴趣,然后我只想获得长名称和desc数据。 大问题有时长名称或desc元素不存在,简单的方法是在将上述数据推入列表后检查索引位置。 任何帮助表示赞赏..