zoukankan      html  css  js  c++  java
  • 显示等待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())

  • 相关阅读:
    Node.js
    EFCore-Migrations
    C#核心语法
    C#编程总结--总目录
    PHP ServerPush
    汉字转拼音
    用五分钟重温委托,匿名方法,Lambda,泛型委托,表达式树
    Sublime Text 3 绝对神器
    多线程学习总结
    分享: 利用Readability解决网页正文提取问题
  • 原文地址:https://www.cnblogs.com/linbao/p/8080073.html
Copyright © 2011-2022 走看看