当浏览器加载页面时,我们想要与之交互的元素可能尚未被加载出来。此刻不仅难以识别元素,而且很容易定位不到元素,抛出异常。设置等待,我们可以解决此问题。
常用的有三种元素等待方式:隐式等待、显示等待、强制等待
一、隐式等待
通过implicitly Wait完成的延时等待,注意这种是针对全局设置的等待,如设置超时时间为10秒,使用了implicitlyWait后,如果第一次没有找到元素,会在10秒之内不断循环去找元素,如果超过10秒还没有找到,则抛出异常,隐式等待比较智能,它可以通过全局配置,但是只能用于元素定位。
driver.implicitly_wait(10)
二、显示等待
显式等待:也称为智能等待,针对指定元素定位指定等待时间,在指定时间范围内进行元素查找,找到元素则直接返回,如果在超时还没有找到元素,则抛出异常,显示等待是 selenium 当中比较灵活的一种等待方式,他的实现原理其实是通过 while 循环不停的尝试需要进行的操作。
from selenium import webdriver
from selenium.webdriver.com

本文介绍了在使用Selenium与浏览器交互时,如何处理页面元素加载延迟的问题。文章详细讲解了隐式等待、显式等待和强制等待的用法和特点。隐式等待是对全局的设置,适用于整个测试过程;显式等待更加智能,能针对特定元素进行精确控制;而强制等待则通过线程休眠实现,通常在特定系统交互时使用。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



