常用的xpath合集

发布时间:2024年01月04日

常用的匹配逻辑

? ? ? ? 精确匹配:=

?????????????????示例
? ? ? ? ? ? ? ? ? ? ? ? 匹配label的innerText值为123的标签
? ? ? ? ? ? ? ? ? ? ? ?'//label[text()="123"]'

????????模糊匹配::

?????????????????示例
? ? ? ? ? ? ? ? ? ? ? ? 匹配label的innerText值包含456的标签
? ? ? ? ? ? ? ? ? ? ? ?'//label[text():"456"]'

????????开头匹配:^

?????????????????示例
? ? ? ? ? ? ? ? ? ? ? ? 匹配label的innerText值以00开头的标签
? ? ? ? ? ? ? ? ? ? ? ?'//label[text()^"00"]'

? ? ? ? 结尾匹配:$

?????????????????示例
? ? ? ? ? ? ? ? ? ? ? ? 匹配label的innerText值以99开头的标签
? ? ? ? ? ? ? ? ? ? ? ?'//label[text()$"99"]'


常用的查找语法

? ? ? ? id查找:#

?????????????????示例
? ? ? ? ? ? ? ? ? ? ? ? 查找label的id属性为123的标签
? ? ? ? ? ? ? ? ? ? ? ?'//label[#id=123]'

? ? ? ? class查找:.

?????????????????示例
? ? ? ? ? ? ? ? ? ? ? ? 查找label的class属性为123的标签
? ? ? ? ? ? ? ? ? ? ? ?'//label[.=123]'

? ? ? ? 属性查找:@

?????????????????示例
? ? ? ? ? ? ? ? ? ? ? ? 查找label的属性名是data-value,值为为123的标签
? ? ? ? ? ? ? ? ? ? ? ?'//label[@data-value=123]'

? ? ? ? 多属性查找:@@

?????????????????示例
? ? ? ? ? ? ? ? ? ? ? ? 查找label的属性名是data-value,值为为123;属性名是data-text,值为为456的标签
? ? ? ? ? ? ? ? ? ? ? ?'//label[@@data-value=123@@data-text=456]'


扩展语法

????????包含文本

????????????????contain(查找语法,"具体的值")

????????????????示例
? ? ? ? ? ? ? ? ? ? ? ?? 查找input的innerText包含123的标签
? ? ? ? ????????????????’//input[contain(text(),"123")]‘

? ? ? ? ? ? ? ?

? ? ? ? 过滤文本前后空值

????????????????normalize-space(text())

????????????????示例

???????????????????????? 查找input的innerText去除前后空格后等于123的标签
? ? ? ????????? ????????’//input[normalize-space(text())="123"]‘

文章来源:https://blog.csdn.net/gongzairen/article/details/135292524
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。