三大等待之显性等待&隐形等待

本文介绍了web自动化中三种常见的等待方法,包括固定时间sleep、隐性等待和显性等待,以解决因页面元素加载导致的错误,强调了不同方式的优势和适用场景,以及它们之间的灵活组合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

web自动化时,由于页面元素加载导致经常报错,此时就需要设置等待,等待设置的 条件成立之后再继续执行代码。常见三大等待如下:

1、time.sleep()

这种比较容易记忆的,也是代码调试中使用较多的一个,但是等待的时间是死的,必须要等到设置的时间到了之后才会继续执行,这样就会产生两个问题,一个是等待时间不够,就会继续报错,另外一个就是等待时间多了,放在整个框架中,导致经常过多等待,影响性能。

2、隐形等待 drive.implicity_wait(5)

这种等待相对比较友好,等待的时间小于等于设置的时间,在设置时间内,只要满足了等待的条件就会停止等待,继续执行代码,避免过多等待。而且只需要设置一次,后续无需重复设置,使用便捷。

3、显性等待 

locator= (By.XPATH, "//*[@class='请选择客户名称']")

wait=WebDriverWait(driver,timeout=10)

wait.until(expected_conditions.element_to_be_clickable(locator))

这种等待方式也比较好用,先写成方法,需要用的地方直接调用即可。

三种等待方式不会排斥,可以用其中一种,也可以多个同时使用,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值