显示等待WebDriverWait

1.等待的三种方式:
(1)time.sleep(2):进程休眠/s
(2)implicitly_wait(30):等待页面完全加载完成,指的是左上角转圈结束,很耗费时间
(3)WebDriverWait(self,driver,timeout,poll_frequency=Poll_FREQUENCY,ignored_exceptions=None):等待元素出现,不需要等页面加载完成
--driver:打开浏览器的一个实例
--timeout:超时的总时长
--poll_frequency:循环去查询的间隙时间,默认0.5秒
--ignored_exceptions:忽略异常,默认忽略NoSuchElementException
   (3.1)10秒以内每隔0.5秒循环查找一次元素,找到元素就返回元素本身,找不到就抛超时异常
  from selenium webdriver.support.wait import WebDriverWait
 
  driver=webdriver.Chrome()
  driver.get("https://www.baidu.com")
   #等待总时长10秒,默认0.5秒询问一次
  element=WebDriverWait(driver,10).until(lambda x:x.find_element_by_id("kw"))
  element.send_keys("lala")
   (3.2)30秒内每隔1秒循环查找元素,判断元素有没有消失,找不到元素返回True,找到抛异常(忽略元素不可见异常)
  from selenium webdriver.support.wait import WebDriverWait
 
  driver=webdriver.Chrome()
  driver.get("https://www.baidu.com")
   #判断页面上不存在某个元素
  is_idsappeared=WebDriverWait(driver,30,1(ElementNotVisibleException)).until_not(lambda x:x.find_element_by_id("kw").is_displayed())

转载于:https://www.cnblogs.com/linbao/p/8080073.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值