zoukankan      html  css  js  c++  java
  • selenium + python 添加等待时间

    转载于:http://www.blogjava.net/qileilove/articles/412450.html

    四、添加等待时间
    有时候为了保证脚本运行的稳定性,需要脚本中添加等待时间。
    4.1、添加休眠
    添加休眠非常简单,我们需要引入 time 包,就可以在脚本中自由的添加休眠时间了。
    # coding = utf-8
    博客园—虫师
    http://fnng.cnblogs.com
    16
    from selenium import webdriver
    import
    time
    #调入 time 函数
    browser = webdriver.Firefox()
    browser.get("http://www.baidu.com")
    time.sleep(0.3)
    #休眠0.3秒
    browser.find_element_by_id("kw").send_keys("selenium")
    browser.find_element_by_id("su").click()
    time.sleep(3)
    # 休眠3秒
    browser.quit()
    4.2、智能等待
    通过添加 implicitly_wait() 方法就可以方便的实现智能等待;implicitly_wait(30)
    的用法应该比 time.sleep() 更智能,后者只能选择一个固定的时间的等待,前者可以
    在一个时间范围内智能的等待。
    文档解释:
    selenium.webdriver.remote.webdriver.implicitly_wait(time_to_wait)
    隐式地等待一个无素被发现或一个命令完成;这个方法每次会话只需要调用一次
    time_to_wait: 等待时间
    用法:
    browser.implicitly_wait(30)
    # coding = utf-8
    from selenium import webdriver
    import
    time
    #调入 time 函数
    browser = webdriver.Firefox()
    browser.get("http://www.baidu.com")
    browser.implicitly_wait(30)
    #智能等待30秒
    browser.find_element_by_id("kw").send_keys("selenium")
    browser.find_element_by_id("su").click()
    browser.quit()
     
    或者使用
    wait.until(lambda browser: browser.find_element_by_id('dialog-iframe-search'))
    这样效果更好
  • 相关阅读:
    Javajdbc
    Web Project添加Struts2框架
    CSS去除免费虚拟主机的广告心得分享
    List<T>采用delegate快速实现排序、查找等操作
    ASP.NET视频采集站核心技术分析(附送对付搜索引擎蜘蛛的贱招)
    Azure完整实例:在线日程表
    [发布]ClouderaCMS: 基于Windows Azure的开源CMS
    获取配置文件节点的值
    asp.net DataGrid排序
    checkbox 获取选中的值
  • 原文地址:https://www.cnblogs.com/zl0372/p/selenium_python.html
Copyright © 2011-2022 走看看