最近在使用Selenium,編寫最簡單的百度search腳本,結果使用name來定位元素拋出了如下exception:
在定位百度的輸入框,使用By.name()定位失敗,但是使用By.id()和By.xPath()都能成功。
經過分析,應該是有某個不可見的元素,也有name這個屬性,且屬性值也為"wd"。使用firebug,在html中搜索wd屬性值,結果真的有hidden的元素含有這個相同的屬性值,且在我要找的元素之前出現,所以使用By.name()方法搜索,會首先找到hidden的那個元素,所以會拋出NotVisibleException