[text()="文本"] ------------ 查找当前文本属性 ------------双引号中的文本必须和网页上的一模一样
[string()="文本"] ------------ 可以定位到父级标签 ------------双引号中的文本必须和网页上的一模一样,一般配合contains()函数使用
[contains(text(),"文本")] 或 [contains(@属性,"属性值")] --------------使用contains不需要和网页上一模一样,只需要包含部分文字
[position()=<>数字] ------------ 它是用来定位节点的位置和范围,常用于控制循环列表的项.
[last()] 或 [last()-1] 倒数第二个 ---------------- 定位最后一项
and/or/not 函数
[@属性1 and 属性2 ] [@属性1 or 属性2] [not(@属性1)] -------------注意not后面有括号
[/following-sibling::] --------------- 选取当前节点之后的所有同级节点,不包括他自己 --------注意::后面,如果你要定位a标签就写a,定位span就写span,定位全部就写, 表示任意标签
[/preceding-sibling::] ----------------- 选取当前节点之前的所有同级结点
[count(子节点标签)=<>数字] ----------------- 判断是当前结点下某种子节点的个数是否大于小于或等于某个数值 ---------注意count仅能计算下一级的节点个数
推荐阅读:
vue.js:634 [Vue warn]: Property or method "userName" is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components, by initializing the property. See:
SpringBoot 整合 webapp时 访问404的解决办法
状态码:415,发送HTTP请求返回415状态码的解决办法
Vue 打开页面时就加载方法,例如查询
SpringCloud怎么调用多个服务的信息
Spring整合Mybatis
SpringCloud 加入 thymleaf前端页面的方法
Controller之间的跳转
This may be the result of an unspecified view, due to default view name generation
Spring AOP的实现原理
行动消除疑虑