2017-02-16 10 views
0

Как проверить, существует ли тэг/xpath/элемент или нет?Как проверить, существует ли xpath/element в XML?

sample.xml

<layer> 
    <value>Random</value> 
    <value>12345</value> 
</layer> 
<layer> 
    <value>Last_Name</value> 
    <value>ABCD</value> 
</layer> 
<layer> 
    <value>dynamic</value> 
    <value>a1234bcd</value> 
</layer> 

Sample.py

from lxml import etree 
tree = etree.parse('sample.xml') 
print tree.xpath('//layer[value="Last_Name"]/value')[1].text 

Здесь я пытаюсь найти значение тега 'Last_name' т.е. ABCD Как проверить, существует ли элемент 'Last_Name' или нет? Потому что исключение поймано как "индекс списка за пределами допустимого диапазона". Можно ли проверить, существует ли элемент?

ответ

0

Соответствие по тексту; затем получите содержание следующего брата:

tree.xpath('//layer/value[text()="Last_Name"]/following-sibling::value/text()') 
Смежные вопросы