一尘不染

Selenium Python-处理无此类元素异常

selenium

我正在使用Python在Selenium中编写自动化测试。一种元素可能存在或可能不存在。我试图用下面的代码来处理它,当存在元素时它可以工作。但是脚本在元素不存在时失败,如果元素不存在,我想继续下一个语句。

try:
       elem = driver.find_element_by_xpath(".//*[@id='SORM_TB_ACTION0']")
       elem.click()
except nosuchelementexception:
       pass

错误-

selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element:{"method":"xpath","selector":".//*[@id='SORM_TB_ACTION0']"}

阅读 318

收藏
2020-06-26

共1个答案

一尘不染

您可以查看元素是否存在,然后单击(如果存在)。无需例外。注意中的复数“ s” .find_elements_*

elem = driver.find_elements_by_xpath(".//*[@id='SORM_TB_ACTION0']")
if len(elem) > 0
    elem[0].click()
2020-06-26