2015-05-18 66 views
0

Selenium xpath只給出可見元素匹配。 HTML頁面包含許多其他不可見但存在的元素。在chrome控制檯上嘗試xpath時,它會顯示所有元素,包括不可見的元素。但是,當在硒中使用相同的xpath時,它僅返回在該時間點可見的元素。這是預期的行爲嗎?Selenium xpath只給出匹配的可見元素

+1

Selenium會找到你在DOM *中存在的元素。如果元素不可見,則不能與其交互,例如,您不能單擊它或將密鑰發送給它。 – alecxe

+1

可能還有其他事情正在進行。大概等待所有元素正確加載。正如@alecxe提到的那樣,它應該返回DOM' – Saifur

+0

中存在的所有元素。我嘗試獲取HTML源代碼,然後使用JSOUP獲取基於XPATH的元素。我的問題是,xpath將應用於html源代碼或僅在硒中可見的元素。 – Sarath

回答

0

是的,沒錯。我也嘗試引用不在我的頁面中的元素(因爲它們是不可見的),但我無法做到這一點。如果元素在頁面中可見,您將有權訪問它們。

我推薦你,如果這個元素在某個時刻可見,例如點擊一個按鈕,你將不得不自動化所有的Selenium進程,然後用Xpath,JQuery或者任何你想要的參考它們。

我希望它能解決您的疑惑。