在处理了几页硒脚本后出现NoSuchElementException错误



我想知道是否有任何方法可以保护脚本在由于NoSuchElementException错误而退出之前不被破坏。我的脚本适用于网站上的前几页,能够找到元素,但在前几页之后,由于没有这样的元素错误,它退出了。我想知道如何才能让程序不退出并一直到页面的末尾。对不起,我是堆栈溢出的新手,所以如果我问得对的话,我不会。谢谢


line 39, in <module>
main3 = main.find_element_by_xpath('//*[@id="main-content-column"]/div/div[7]/div/div[2]/div/div/ng-transclude/table/tbody')

raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="main-content-column"]/div/div[7]/div/div[2]/div/div/ng-transclude/table/tbody"}


并非所有元素都具有相同的Xpath或Css。试着看看它什么时候失败——也许元素有另一个表达式。

此外,尝试使用这个:

WebDriverWait wait = new WebDriverWait(browser, secondsToWait); 
wait.until(ExpectedConditions.presenceOfElementLocated(By.id(elementID)));

有许多ExpectedConditions,如elementToBeClickable、elementToBeVissible等等

最新更新