显式等待,隐式等待python+selenium

本文详细解析了Selenium中隐式等待和显式等待的概念及应用。隐式等待适用于全局元素查找,而显式等待针对特定元素,提高了自动化测试的效率与准确性。

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

隐式等待

查询一个元素时,如果一直查询不到就会每隔一段时间查询一次。针对的是全局的元素

driver.implicitly_wait(10)   

 

显式等待

1.time.sleep(10) -----》必须要等待10S,线程休眠10S,也称作“强制等待”

2.WebDriverWait------》最好的方法,最多等待15S,只要查询到就不会多等待1S。

    如果没有满足until中的条件,就会在这里等待15秒,15秒内没有等到就会抛出异常。针对的是特定的元素,一般是每500ms查询一次。

inputemail = WebDriverWait(driver,15).until(EC.presence_of_element_located((By.NAME, 'loginfmt'))) 

    看到((By.NAME, 'loginfmt')),有木有人同我一样会觉得为什么会有两个括号,答案就是里面是元组类型的数据。

针对这篇文章https://blog.youkuaiyun.com/xd060606/article/details/86503598,里面出现报错,猜测是页面未加载,所以解决方案为增加time.sleep(10),有同志指出还有一种情况是页面加载超时,这种时候可以使用WebDriverWait,如果超出设置的等待时间,则抛出异常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值