selenium-确定找到的element唯一

Posted tynam

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium-确定找到的element唯一相关的知识,希望对你有一定的参考价值。

在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 

   

  技术分享图片

 

  

 

以上是关于selenium-确定找到的element唯一的主要内容,如果未能解决你的问题,请参考以下文章

如何找到这个 element with Selenium?

selenium键盘操作

Selenium自动化测试-4.By定位及如何确定元素唯一

selenium元素定位

如何告诉JAVA Selenium WebDriver从html中找到text-element

selenium的异常:ElementClickInterceptedException