当前位置: 首页 > article >正文

selenium大量并发连接驱动超时

我的业务是根据数据生成一大片报表图,组成一个word文档,量大概10~100之间,挨个执行太慢了,15分钟左右,为了加快速度使用了多线程,而多线程又被机器速度限制,一旦跑的多了,就会有线程被挂起,这时就会报连不上驱动的问题。找了大量文章,都是在写访问超时时间,没有写驱动超时的。。。

解决方案

使用ChromeDriverServiceChromeOptions创建页面对象指定连接驱动超时时间,设置为5分钟,

	//System.setProperty(global.getConfig("webDriver.driverName"), getUrlStr(global.getConfig("webDriver.driverPath")));
	System.setProperty("webdriver.chrome.driver", "D:/developkit/driver/chromedriver.exe");
	ChromeOptions chromeOptions = new ChromeOptions();
	//无头模式
	chromeOptions.setHeadless(false);
	//设置浏览器完整路径,有时会报找不到浏览器的问题,指定路径
	chromeOptions.setBinary("D:/Program Files (x86)/Google/Chrome/Application/chrome.exe");
	
	Duration duration = Duration.of(5, ChronoUnit.MINUTES);//5分钟超时时间 - 驱动连接超时时间
	ChromeDriverService service = new ChromeDriverService.Builder()
                //超时时间
                .withTimeout(duration)
                //执行驱动,由chromeOptions提供
                //.usingDriverExecutable(getUrl(global.getConfig("webDriver.driverPath")))
                .build();
//        service.start();
	return new ChromeDriver(service, chromeOptions);
	

http://www.kler.cn/a/386792.html

相关文章:

  • 用友U8-Cloud uapbd.refdef.query sql注入漏洞复现
  • 算法学习第一弹——C++基础
  • C++中的std::tuple和std::pair
  • CSS回顾-长度单位汇总详解
  • 【数据结构与算法】第12课—数据结构之归并排序
  • Docker 篇-Docker 详细安装、了解和使用 Docker 核心功能(数据卷、自定义镜像 Dockerfile、网络)
  • sealos部署K8s,安装docker时master节点突然NotReady
  • # SpringCloud学习
  • 虚拟现实辅助工程技术如何加速汽车设计与制造
  • 接口类和抽象类在设计模式中的一些应用
  • 深度学习:bert模型
  • Nuxt.js 应用中的 prepare:types 事件钩子详解
  • MySQL 四类管理日志
  • 力扣(leetcode)每日一题 3255 长度为 K 的子数组的能量值 II|滑动窗口
  • 【系统架构设计师】2022年真题论文: 论软件维护方法及其应用(包括解题思路和素材)
  • 决策树(部分)
  • Ubuntu 22 安装 Apache Doris 3.0.3 笔记
  • (十五)JavaWeb后端开发——异常处理/AOP面向切面编程
  • 六、SpringMVC的视图
  • C++学习笔记----10、模块、头文件及各种主题(一)---- 模块(5)
  • React 入门课程 - 使用CDN编程React
  • LeetCode 234.回文链表
  • 高级java每日一道面试题-2024年10月29日-JVM篇-简述分代垃圾回收器是怎么工作的?
  • pytest简单使用
  • vue-svg-icon的安装和使用
  • Ubuntu 2004上迁移MySQL8.0的数据