码迷,mamicode.com
首页 > 编程语言 > 详细

第三章 python webdriver API(三)——设置等待

时间:2019-04-01 15:41:17      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:eth   范围   http   选择   except   rom   find   out   quit   

""""
设置等待时间
    sleep():设置固定休眠时间。python的time包提供了休眠方法sleep(),导入time包就可以使用sleep()进行脚本的执行过程进行休眠
    implicitly_wait():是webdriver提供的一个超时等待。隐的等待一个元素被发现,或一个命令完成。
如果超出了设置时间的则抛出异常。
    WebDriverWait():同样也是webdriver提供的方法。在设置时间内,默认每隔一段时间检测一次当前页面元素是否存在,
如果超出设置时间检测不到则抛出异常。
"""
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
import time
driver = webdriver.Firefox()
driver.get("http://www.baidu.com")

"webdriverwait()方法使用"
element = WebDriverWait(driver, 10).until(lambda driver:driver.find_element_by_id("kw"))
element.send_keys("selenium")

"添加智能等待"
driver.implicitly_wait(30)
driver.find_element_by_id("su").click()

"添加固定休眠时间"
time.sleep(5)
driver.quit()



"""
implicitly_wait()方法比sleep()更智能
后者只能选择一个固定的时间等待,前者可以在一个时间范围内智能等待。
WebDriverWait()
    详细格式如下:
        WebDriverWait(driver,poll_frequency=0.5, ignored_exceptions=None)
        driver ----webdriver的驱动程序
        timeout --- 最长超时时间,默认以秒为单位
        poll_frequency --- 休眠时间的间隔(步长)时间,默认0.5秒
        ignored_exceptions --- 超时后的异常信息,默认情况下抛NoSuchException 异常。
"""

""""
WebDriverWait()一般由until()或until_not()方法配合使用
until(method, message="")
调用该方法提供的驱动程序作为一个参数,直到返回值不为False
until_not(method, message="")
调用该方法提供的驱动程序作为一个参数,直到返回值为False
"""

 

第三章 python webdriver API(三)——设置等待

标签:eth   范围   http   选择   except   rom   find   out   quit   

原文地址:https://www.cnblogs.com/jetaime-ZH/p/10636617.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!