Windows Server任务计划运行Selenium脚本出现WebDriver 60秒超时如何解决
问题排查解决思路
任务计划程序运行环境差异排查
- 校验任务计划账号配置:确认运行任务的账号和你手动在ISE中执行脚本的账号一致,若勾选了「不管用户是否登录都要运行」选项,会触发Windows会话0隔离机制,Edge这类图形界面程序无法正常初始化渲染,不同URL的页面渲染复杂度不同,资源消耗更高的页面会先触发WebDriver通信超时。
- 核对Edge启动参数配置:确认失败脚本是否配置了
--headless=new、--no-sandbox、--disable-dev-shm-usage、--disable-gpu等无界面运行必备参数,缺少上述参数时非交互会话下的Edge启动会被系统限制资源,导致页面加载超时。 - 检查任务工作目录配置:确认任务计划操作项的「起始于」字段填写了脚本所在的完整目录,任务计划默认工作目录为
C:\Windows\System32,若脚本使用相对路径引用EdgeDriver、配置文件,会出现组件加载失败,触发通信超时。
Selenium与站点适配排查
- 对比两个脚本的超时配置:确认失败脚本的页面加载超时、脚本执行超时、元素显式等待阈值和正常脚本一致,若目标URL的静态资源更多、后端响应速度更慢,默认60秒阈值不足以完成全页面加载时,就会抛出*The HTTP request to the remote WebDriver server for URL [localhost] timed out after 60 seconds.*错误,可手动延长超时阈值测试。
- 验证Edge与EdgeDriver版本匹配性:3.0.1版本Selenium对高版本Chromium内核Edge的兼容性存在已知缺陷,若Edge近期有自动更新,会出现部分页面初始化时Driver通信中断的问题,可指定EdgeDriver路径为和当前Edge版本完全匹配的二进制文件测试。
- 排查目标URL访问限制:确认失败脚本访问的URL是否有IP白名单、身份校验、人机验证机制,任务计划运行的账号如果没有对应站点的Cookie、凭证缓存,会被拦截在验证页面,导致页面无法完成加载触发超时。
日志复现排查
- 给失败脚本增加全链路日志:每一步操作前后输出时间戳和执行状态,启动EdgeDriver时添加日志参数输出运行日志,定位具体卡在哪个操作环节。
- 临时调整任务计划配置为「只在用户登录时运行」,执行任务时观察Edge窗口的加载状态,确认是否有报错弹窗、是否卡在验证/加载环节,定位和手动运行场景的差异点。
内容的提问来源于stack exchange,提问作者ez912
相关产品推荐
相关产品推荐

