首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >循环遍历find_element_by_name python selenium

循环遍历find_element_by_name python selenium
EN

Stack Overflow用户
提问于 2018-08-11 03:59:47
回答 1查看 198关注 0票数 0

我有一段代码,它在其中查找一个名称,我正在尝试编写一个if语句,如果它找不到该名称,则查找其他名称。

我到目前为止所得的资料如下:

代码语言:javascript
复制
        excel = driver.find_element_by_name("Export to Excel")

        if excel == None:
            driver.implicitly_wait(15)
            search = driver.find_element_by_xpath("//span[@id='inplaceSearchDiv_WPQ2_lsimgspan']")
            search.click()

        else:
            excel.click()

我知道if语句中的内容是有效的,因为我对它进行了测试。假设我要更改if语句中的参数吗?我得到的错误是,我尝试输入"No selenium.common.exceptions.NoSuchElementException: Message: No such element element“而不是"None”,但仍然得到相同的错误。它还告诉我,Exception Unhandled NoSuchElementException('No such element', None, None)可以给我一些关于if语句哪里做错了的建议吗?该错误还指出,当按钮不在页面中时,它是在excel = driver.find_element_by_name("Export to Excel")中找到的。如果是这样,它将直接转到语句的else部分

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-11 04:18:27

如果您的驱动程序上的find_element_by_name方法找不到webelement,它将引发NoSuchElementException异常。

尝尝这个

代码语言:javascript
复制
from selenium.common.exceptions import NoSuchElementException

try:
    excel = driver.find_element_by_name("Export to Excel")
    excel.click()
except NoSuchElementException:
    driver.implicitly_wait(15)
    search = driver.find_element_by_xpath("//span[@id='inplaceSearchDiv_WPQ2_lsimgspan']")
    search.click()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51793353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档