本文主要是介绍Python等待方式之显性等待源码分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
显性等待 (条件等待)
from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.wait import WebDriverWait #导包等待的对象from selenium.webdriver.support import expected_conditions as EC #等待的条件的集合包
WebDriverWait(driver,10,0.5).until(EC.presence_of_element_located(locator))
1、WebDriverWait(driver,10,0.5),通过源码看内部实现逻辑:导包导入了WebDriverWait这个类,类中定义了一个构造函数,实例化类时,会执行构造函数。构造函数主要传参有driver,timeout,poll_frequency,即driver,超时时间参数和频率参数
2、until(EC.presence_of_element_located(locator)),内部逻辑分析:WebDriverWait类中还定义了until函数,函数入参为method。expected_conditions为.py文件,即模块,别名为EC。expected_conditions内有定义presence_of_element_located类,类中有__init__构造函数和__call__函数.
这篇关于Python等待方式之显性等待源码分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!