常用的xpath合集

常用的匹配逻辑

        精确匹配:=

                 示例
                        匹配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"]‘