查看網頁上的動態元素時,如果該元素不存在,Selenium 就會崩潰。因此,我必須拯救應用程式才能繼續。我想我的語法有問題
response = driver.find_element(:class, element).text
如果未找到該元素,Selenium 會出錯并使應用程式崩潰。無論我的瀏覽器配置如何,都會發生這種情況。
uj5u.com熱心網友回復:
硒沒有崩潰。您的代碼遇到例外情況(嘗試使用不存在的元素)。代碼通過引發NoSuchElementError.
如果您試圖確定某個元素是否存在,您可以使用Driver#find_elements并檢查它是否Array#size等于 0。
如果您嘗試使用尚未出現在頁面上的元素,則需要創建顯式等待以輪詢該元素以顯示在 DebanjanB 的回答中。
uj5u.com熱心網友回復:
在嘗試按如下方式定位元素之前,您需要稍等片刻讓元素可見:
wait = Selenium::WebDriver::Wait.new(:timeout => 10)
ele = wait.until { driver.find_element(:class, element).displayed? }
response = ele.text
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/376550.html
