• python + selenium 等待时间


    37:固定等待时间
    方法:sleep()
    实例:time.sleep(5) # 等待5秒
    --------------------------------------------------------------------------------
    38:等待一个元素被发现,或一个命令完成,超出了设置时间则抛出异常智能等待。
    方法:implicitly_wait()
    实例:driver.implicitly_wait(30)
    --------------------------------------------------------------------------------
    39:在设置时间内,默认每隔一段时间检测一次当前页面元素是否存在,如果超过设置时间检测不到则抛出异常
    "方法:WebDriverWait()"

    #WebDriverWait(driver, timeout, poll_frequency=0.5, ignored_exceptions=None)
    #——driver:WebDriver的驱动程序(Ie, Firefox, Chrome或远程)
    #——timeout:最长超时时间,默认以秒为单位
    #——poll_frequency:休眠时间的间隔(步长)时间,默认为0.5秒
    #——ignored_exceptions:超时后的异常信息,默认情况下抛NoSuchElementException异常


    实例:
    element = WebDriverWait(driver, 10).until(lambda x: x.find_element_by_id("id"))


    #一般由unit()或until_not()方法配合使用,同上:


    调用该方法提供的驱动程序作为一个参数,直到返回值不为False。
    ——until(method, message=’’)

    调用该方法提供的驱动程序作为一个参数,直到返回值为False。
    ——until_not(method, message=’’)


    # 还可以与expected_conditions 一起使用
    from selenium.webdriver.support import expected_conditions as EC

    # 实例: 判断某个元素是否可见并且是enable的,这样才clickable

    WebDriverWait(dr,15,1).until(EC.element_to_be_clickable((By.ID,"EmployeeListMenu")),"Not Find element")

  • 相关阅读:
    Java 8与Runtime.getRuntime().availableProcessors()
    nginx配置
    周末完成工作小结
    CentOS 8 安装MySQL 8.0
    centOS8网络获取不了
    IUAP平台新增菜单存储过程
    centOS8安装Docker
    Mybatis里用到的设计模式
    2020,回顾过往,展望未来
    使用 Apache SSI(Server Side Includes) 制作多语言版静态网页
  • 原文地址:https://www.cnblogs.com/wyj497022944/p/9627086.html
Copyright © 2020-2023  润新知