在python + selenium 中经常会遇到找到的元素不唯一,导致定位到的元素不是预期的或者定位不到元素
解决方法:只要在页面进行确认找到的元素唯一后,再进行操作
页面确认方法:
1、通过html中检索功能确认
进入开发者模式:点击右上角三个点-->选则 search 进行查找
或者直接ctrl + F (windows下)/ command + F (mac系统下)
如下图进行查找,查找方法和 selenium 中一样,如 class = ‘mnav’则查找中输入 .mnav; id = ‘username’ 则输入#username; name = ‘pwd’则输入name=‘pwd’等
查找出后可在检索框后面确定找到的数量,然后通过上下键进行切换观察是否在html中唯一
这种方法有点麻烦,但也是确认元素唯一的一种方法,不推荐使用
2、通过控制台(Console)确认
复制要查找的元素,例如:查找class = ‘.mnav’,则在控制台中输入 document.getElementsByClassName('mnav')
如下图也可以确认元素是否唯一
控制台中确认,和 selenium 定位类似
document.getElementById() // find id
document.getElementsByClassName() // find classname
document.getElementsByName() // find name
document.getElementsByTagName() // find tag