首页 > 解决方案 > 如何使用 python xml.etree.ElementTree 验证 xpath

问题描述

如何使用 python 验证给定的 xpath。在下面的代码中,我根据给定的 xpath 获取值。在此之前,我需要验证 xpath 是否有效。

def getElementsData(xpath):
    elements = list()
    for elem in root.findall(xpath):
        elements.append(elem.text)
    return elements

提前致谢

标签: pythonxmlxpath

解决方案


使用优秀的lxml,它可以使用xpath:

d = lxml.etree.fromstring(your_xml) # if html use lxml.html.fromstring
try:
    result = d.xpath(some_xpath_expression)
except lxml.etree.XPathEvalError:
    print('The expression is invalid')

if not result:
    print('Expression is valid but no results')
else:
    print('Expression valid! {} results found'.format(len(result)))

推荐阅读