检查xml文件中的索引是否存在标记

时间:2017-11-20 14:07:31

标签: python xml elementtree

我编写了一个返回xml文件标记值的python脚本。它通过索引遍历文件。如何检查索引是否存在?

这是基本蓝图。

tree = ET.parse(file)
root = tree.getroot()
root[0][1][0].text

1 个答案:

答案 0 :(得分:1)

我不确定你想要做什么。据我所知,你正在解析一些XML,并且你试图从一个基于索引的xml元素中获取文本。我想你可以使用XPath searching代替。如果使用lxml模块解析xmls而不是xml,它的工作效果会更好。 Here是lxml中XPath用法的描述。

无论如何,如果您真的更喜欢使用索引,则不必检查特定索引下是否存在元素。如果索引不存在,请使用try,except块来捕获错误。

This answers提供了一些使用此方法的详细信息。

你的代码看起来或多或少是这样的:

tree = ET.parse(file)
root = tree.getroot()
try:
     text = root[0][1][0].text 
except IndexError as e:
     #do something to handle error
     pass