首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果没有使用Python/Selenium找到元素,那么除了代码块之外,如何更快地执行呢?

如果没有使用Python/Selenium找到元素,那么除了代码块之外,如何更快地执行呢?
EN

Stack Overflow用户
提问于 2021-06-03 10:49:01
回答 1查看 29关注 0票数 0

下面有下面的代码,可以从页面中获取注释。有时没有注释,因此出现了except代码触发器。它在执行except代码之前尝试尝试代码块大约5-10秒。是否有更快的方法来检查元素是否被找到?最好是:如果找不到元素,那么直接执行not代码。

代码语言:javascript
运行
复制
try: 
        comments = WebDriverWait(driver, 20).until(
            EC.presence_of_all_elements_located((By.XPATH, relativeXpathToReportComments)))
        # some code to be executed if the elements is found

except:
        print("could not find/get comments on comment page")
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-03 11:09:04

如果您想立即检查元素的存在,只需使用以下内容:

代码语言:javascript
运行
复制
if driver.find_elements_by_xpath('relativeXpathToReportComments'):
    # some code to be executed if the elements is found
else:
    print("could not find/get comments on comment page")

driver.find_elements返回与传递的定位器匹配的元素列表。

如果存在这样的元素,则返回非空的已发现元素列表。否则,它返回一个在Python中被识别为False的空列表。

find_elementsfind_element正在寻找由ImplicitWait定义的直到超时的元素,默认为0。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67820064

复制
相关文章

相似问题

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