Python Etree可以处理这些类型的XPath查询吗

Python Etree可以处理这些类型的XPath查询吗,python,xml-parsing,elementtree,Python,Xml Parsing,Elementtree,pythonsxml解析库是否可以像下面这样接受复杂的XPath查询 # Note the "[text()=\"USER_4D\"]" assert root.find("Group/EnvConfig/Overrides/Override/Key[text()=\"USER_4D\"]") != None 我在上面一行得到错误SyntaxError:invalid predicate。如果删除“predicate”[text()=“USER\u 4D\”],则不会引发预期/错误 是什么导致

pythonsxml解析库是否可以像下面这样接受复杂的XPath查询

# Note the "[text()=\"USER_4D\"]"
assert root.find("Group/EnvConfig/Overrides/Override/Key[text()=\"USER_4D\"]") != None
我在上面一行得到错误
SyntaxError:invalid predicate
。如果删除“predicate”
[text()=“USER\u 4D\”]
,则不会引发预期/错误

是什么导致了这个错误?我的XPath格式是否不正确,或者Etree是否不能执行这些XPath查询?你能就如何解决这个问题提供建议吗


我希望我不需要使用定制的XML解析库,因为我只是尝试在内置的XML解析库中使用Python进行一些简单的单元测试。是否有其他本机Python库可以处理此XPath查询?

ElementTree不支持问题中使用的XPath表达式类型。看

要使用文本内容
USER_4D
断言
元素的存在,可以使用如下内容:

Key = root.find("Group/EnvConfig/Overrides/Override/Key")
assert Key != None             # Element exists
assert Key.text == "USER_4D"   # Element has specific content