当前位置: 首页 > article >正文

方法 WebDriverWait

定义:       

         WebDriverWait是Selenium WebDriver提供的一个工具类,它允许你设置等待条件,直到这个条件成立,才继续执行代码。这对于处理网页上的异步加载元素特别有用,比如等待某个元素变得可见、可点击等。

from selenium import webdriver  
from selenium.webdriver.common.by import By  
from selenium.webdriver.support.ui import WebDriverWait  
from selenium.webdriver.support import expected_conditions as EC  
  

driver = webdriver.Chrome()  
driver.get("http://xxxxxxxx.com")  
  
# 设置等待时间(秒)和等待条件  
try:  
    element = WebDriverWait(driver, 10).until(  
        EC.presence_of_element_located((By.ID, "myElementId"))  
    )  
finally:  
    driver.quit()  

常用的等待条件:

  • presence_of_element_located:检查元素是否存在于DOM中,但不一定可见。

  • visibility_of_element_located:检查元素是否存在于DOM中且可见。

  • element_to_be_clickable:检查元素是否可见且可点击。

  • text_to_be_present_in_element:检查元素的文本是否包含特定的文本。

  • text_to_be_present_in_element_value:检查元素的value属性值是否包含特定的文本。

  • staleness_of:等待直到指定的元素不再是DOM中的一部分。

  • invisibility_of_element_located:等待直到元素在DOM中但不可见。

  • element_to_be_selected:等待直到元素被选中。

注意事项:

  • WebDriverWait的第一个参数是WebDriver的实例。

  • 第二个参数是超时时间(秒),如果在指定的时间内条件未成立,将抛出一个TimeoutException。

  • 使用try...Finally语句块可以确保在测试结束后关闭浏览器。

  • 过度使用显式等待(如WebDriverWait)可能会使测试变慢,应谨慎使用。


http://www.kler.cn/a/326862.html

相关文章:

  • 【LuatOS】基于WebSocket的同步请求框架
  • 爬虫学习4
  • Kafka在大数据处理中的作用及其工作原理
  • 【Redis】一种常见的Redis分布式锁原理简述
  • 关于git命令
  • 影刀RPA实战:嵌入python,如虎添翼
  • Java应用文件上传超出默认大小
  • 【888题竞赛篇】第十二题,2024ICPC网络赛第二场-游戏(Game)
  • 【容器云】容器云设计方案
  • Linux编译部署PHP环境
  • 冒泡排序-C语言
  • 程序员如何提升核心竞争力——深度耕耘与软技能的培养》
  • HTML元素居中
  • 一款好用的远程连接工具:MobaXterm
  • Xcdoe快速更新安装的小Tips
  • 工业制造场景中的设备管理深度解析
  • QT-文件创建时间修改器
  • 安全运营 -- GPO审计
  • Chrome Cookie最大有效期
  • Web3的愿景:如何构建去中心化的互联网
  • Llama微调以及Ollama部署
  • 阿里云k8s如何创建可用的api token
  • 腾讯云SDK产品优势
  • 4.2.1 通过DTS传递物理中断号给Linux
  • 全面指南:探索并实施解决Windows系统中“mfc140u.dll丢失”的解决方法
  • NAND Flash虚拟层坏块管理机制