selenium driver, button=driver.find_element_by_xpath("//input[@id='alpha']") 消息:没有这样的元素:无法定位元素

时间:2021-03-21 11:19:35

标签: python selenium selenium-webdriver

我想避免由于未找到按钮而导致的异常或错误,并更改一个变量以停止循环。 我无法在文档中找到它在元素不存在的情况下真正返回的内容

while there_is_more:
    button=driver.find_element_by_xpath("//input[@id='alpha']")

    if not button :
        there_is_more=False

目标是在找不到按钮时停止

2 个答案:

答案 0 :(得分:1)

while there_is_more:
    button=driver.find_elements_by_xpath("//input[@id='alpha']")

    if len(button)==0 :
        there_is_more=False

使用查找元素并检查结果列表。

答案 1 :(得分:0)

我试过了,完美解决了我的问题

from selenium.common.exceptions import NoSuchElementException
    
    try:
        more_button=driver.find_element_by_xpath("//input[@id='alpha']")
        more_button.click()

    except NoSuchElementException:
        there_is_more= False