Python selenium的三种等待
1、第一种是强制等待,也就是说,无论怎么样都要进行调用
简单代码如下:
from
time
import
sleep
sleep
(3)#强制等待3秒
2、第二种是隐形等待,隐形等待是设置了一个最长等待时间,如果在规定时间内网页加载完成,则执行下一步,否则一直等到时间截止,然后执行下一步。隐性等待对整个driver的周期都起作用,所以只要设置一次即可。
简单代码如下:
from
selenium
import
WEBdriver
driver
=
webdriver.Firefox()
driver.implicitly_wait(
2
)
# 隐性等待,最长等2秒
3、第三种是显性等待,WebDriverWait,配合该类的until()和until_not()方法,就能够根据判断条件而进行灵活地等待了。它主要的意思就是:程序每隔xx秒看一眼,如果条件成立了,则执行下一步,否则继续等待,直到超过设置的最长时间,然后抛出TimeoutException。
简单的代码如下:
from
selenium.webdriver.support.wait
import
WebDriverWait
WebDriverWait(driver,
20
,
0.5
).until(XXXX)
WebDriverWait(driver,
20
,
0.5
).until_not(XXXX)
相关文章