selenium设置元素发现超时等待时间-python
来源:互联网 发布:tempdb数据库占满c盘 编辑:程序博客网 时间:2024/05/21 07:53
前言:之前写了个脚本,要在ip站点网站查询一千多个域名的备案信息,但是有些域名是没有备案的,所以就找不到元素,虽然我已经设置了异常判断,但是默认等待的30秒时间让我无法忍受。然后经过各种百度找到了解决的办法。
外话:一同事用nodejs异步发包的方式2分钟就解决了一千多个数据。
先说说JAVA里加的语句
在 Webdirver driver = new FirefoxDriver();(可能是其他浏览器驱动,没关系。) 后,加上。driver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS); 默认是30秒,可以改小点
然后是我们的python环境下:
#导入 WebDriverWait 包
from selenium.webdriver.support.ui import WebDriverWait
#导入 time 包import time
sleep() 设置固定等待时间
——如:time.sleep(5) #等待5秒
implicitly_wait() 等待一个元素被发现,或一个命令完成,超出了设置时间则抛出异常
——如:driver.implicitly_wait(30)
driver.find_element_by_id("id").click()
WebDriverWait() 在设置时间内,默认每隔一段时间检测
检测一次当前页面元素是否存在,如果超过设置时间检测不到则抛出异常
WebDriverWait(driver, timeout, poll_frequency=0.5, ignored_exceptions=None)
——driver:WebDriver 的驱动程序(Ie, Firefox, Chrome 或远程)
——timeout:最长超时时间,默认以秒为单位
——poll_frequency:休眠时间的间隔(步长)时间,默认为 0.5 秒
——ignored_exceptions:超时后的异常信息,默认情况下抛 NoSuchElementException 异常
——如1:element = WebDriverWait(driver, 10).until(lambda
x : x.find_element_by_id("id"))
element.send_keys("selenium")
——如2:element = WebDriverWait(driver, 10).until(lambda x: x.find_element_by_id(“Id”))
is_disappeared = WebDriverWait(driver, 30, 1, (ElementNotVisibleException)).until_not(lambda
x: x.find_element_by_id(“someId”).is_displayed())
WebDriverWai()一般由 unit()或 until_not()方法配合使用:
——until(method, message=’’) 调用该方法提供的驱动程序作为一个参数,直到返回值不为 False。——until_not(method, message=’’) 调用该方法提供的驱动程序作为一个参数,直到返回值为 False。
- selenium设置元素发现超时等待时间-python
- selenium 超时设置/等待时间过长自动停止(python)
- selenium定位元素,合理设置等待时间
- selenium等待时间设置
- selenium(4)-打印、设置等待时间
- selenium2+python设置等待时间
- 自动化测试——Selenium+Python判断元素是否可见,及元素未出现时设置超时时限
- Selenium设置等待时间的几种方法
- selenium python学习笔记---添加等待时间
- selenium 等待时间
- 【二】【selenium+python】发现页面元素的方法介绍
- selenium webdriver超时设置
- 为何要设置数据库连接池的 超时等待时间
- android HttpUrlConnection 设置超时无效,等待时间很长的问题
- selenium webdriver—超时设置
- 【Selenium学习笔记】测试中如何设置等待时间
- python selenium 元素操作
- selenium等待时间处理
- jQuery UI的简单使用,轻松实现二级菜单
- Android通用流行框架大全
- maven中依赖的scope各个取值的含义
- 一些软件开发类的学习资料
- MotionEvent和TouchSlop
- selenium设置元素发现超时等待时间-python
- LLDB调试命令初探
- Android Studio常用插件
- java类静态属性测试
- ReactNative相关文章变迁到Github新地址
- Android之代码混淆
- html 容易忘的
- Java+MySQL实现网络爬虫程序
- Win7 搭建svn地址