问答 使用 selenium 做自动化过程中遇到的一个元素文字展示的问题

dy20082250 · 2017年12月19日 · 最后由 levelyu 回复于 2018年03月21日 · 1659 次阅读

如图

使用 xpath
.//*[@id='mainRight']//button[text()='+ 合作伙伴']

去定位元素的时候定位不到
当即终止脚本运行

F12,发现在源码显示中显示为两行
“+
合作伙伴

我记得我前面也遇到过这个问题
始终不明白为什么会这样!

有了解的朋友指点指点哦!

共收到 8 条回复 时间 点赞

标注一下,以便于查找

右键元素把 xpath 的值复制出来看看是否和你写的不一样

Jerry li 回复

确实不一样,我现在的疑问不在于怎么找到这个元素

我是不明白为什么就在源码中展示为两行了
对前端知道的太少了,遇到这中问题总是不能理解

用 class 属性定位?

楼上正解,直接用 class 就可以定位到,不需要用 text()

  1. 从当前节查找 //直接从全部查找符合的. 有两个属性可以查: name class.不非得 text()

2 问前端哈

借楼问一下,页面里有好多个相同的 class_name 的元素,又没有 index 属性,怎么定位呢?比如上面那个例子里,xpath 的写法是什么?

我去催饭 回复

axes 方法,利用父子节点或兄弟节点中可以精确定位的某个节点,反推与所需定位元素的层级关系进行定位

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册