我的 selenium 有以下代碼,我需要單擊輪播圖示并一張一張地獲取所有影像,但有時該輪播沒有超過一張影像,因此箭頭圖示不存在且不可點擊。
new WebDriverWait(driver, 40).until(ExpectedConditions.elementToBeClickable(By.cssSelector(".arrow-icon "))).click();
如何處理元素不可點擊的例外?
uj5u.com熱心網友回復:
修復它的兩種方法
使用
findElements將回傳 alist of web elementif found elsesizeoflistwill be0try { if (driver.findElements(By.cssSelector(".arrow-icon ")).size() > 0 ) { System.out.println("Size is > 0 so there must be at least one web element, do some interaction below like click etc"); new WebDriverWait(driver, 40).until(ExpectedConditions.elementToBeClickable(By.cssSelector(".arrow-icon "))).click(); } else { System.out.println("Size is 0, so web element must not be present, do something here that would make it available"); } } catch (Exception e) { // TODO: handle exception }直接在里面使用有風險的代碼
trytry { new WebDriverWait(driver, 40).until(ExpectedConditions.elementToBeClickable(By.cssSelector(".arrow-icon "))).click(); } catch (Exception e) { // TODO: handle exception }
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/473978.html
