我有一个包含函数的 xpath。我不知道 ., in contains() 是什么意思,这个 xpath 是如何工作的?谁能告诉我?谢谢。
xpath('//div[label//text()[contains(., "Faculty")]]//input')
.
引用当前上下文节点,在您的情况下是文本节点,因为.
驻留在谓词表达式([]
内的表达式)中,用于text()
。XPath 表达式的分解:
-
//div[...]
:查找div
元素,在文档中的任何位置,其中... -
label
:div
具有子元素label
-
//text()[contains(., "Faculty")]
:标签包含后代文本节点,其中文本节点的值包含文字"教师" -
//input
:从满足上述所有条件的div
中,返回后代元素input
所以 xpath 是//div[label//text()[contains(., "Faculty")]]//input
//div[...]//input
搜索所有div中与括号中特殊条件匹配的所有输入
条件是label//text()[contains(., "Faculty")]
所以上面的div 应该有直接的子级(在第一级),其中在任何级别的以下项目上都存在包含"教师"的文本