最近在使用Selenium,编写最简单的百度search脚本,结果使用name来定位元素抛出了如下exception:

 

在定位百度的输入框,使用By.name()定位失败,但是使用By.id()和By.xPath()都能成功。

经过分析,应该是有某个不可见的元素,也有name这个属性,且属性值也为"wd"。使用firebug,在html中搜索wd属性值,结果真的有hidden的元素含有这个相同的属性值,且在我要找的元素之前出现,所以使用By.name()方法搜索,会首先找到hidden的那个元素,所以会抛出NotVisibleException

 

posted on 2014-03-26 16:04  雨令  阅读(7248)  评论(0编辑  收藏  举报