首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
EdgeDriver 92.0.902.67 win64 下载与Selenium版本匹配避坑指南
📅 2026/10/14 14:22:26
✍️ 爱科研究院
👁 阅读 3,247
简介EdgeDriver 92.0.902.67 的 win64 版本是面向 64 位 Windows 的 Microsoft Edge 浏览器自动化测试驱动适合使用 Selenium WebDriver 的开发与测试工程师解决测试脚本无法直接控制 Edge 浏览器的问题。压缩包内共 3 个文件以 Windows 可执行驱动为主体附有 html 说明文档和许可证/版权文件整包仅 6.99MB部署轻量。下载后需将驱动加入 PATH 环境变量并在脚本中配合匹配的 Edge 浏览器版本使用说明文档提供了更新日志、已知问题与配置注意事项可帮助规避版本冲突和路径配置错误。已有 822 人学习/下载适合需要在本机快速搭建 Edge 自动化测试环境、开展 Selenium 回归测试的测试工程师。1. EdgeDriver 92.0.902.67 win64自动化测试卡在版本号上的那一夜做Web自动化的人十有八九都栽在驱动版本上。明明脚本写得没问题Selenium一启动就报session not created或者浏览器弹出来闪一下就消失查了半天发现是EdgeDriver和Edge浏览器版本对不上。EdgeDriver 92.0.902.67 for win64 就是这种场景下的固定锚点——它是微软官方为Edge 92浏览器配套发布的64位驱动专门解决Selenium在Windows 10/11 64位环境下驱动Edge时的会话建立问题。这篇笔记围绕这个版本号的下载、安装、验证和排错展开适合被浏览器自动更新折腾到怀疑人生的测试工程师也适合刚接触Selenium、还没搞懂驱动匹配原则的新手。2. 版本匹配机制为什么 92.0.902.67 不能随便换2.1 驱动与浏览器的对应关系EdgeDriver和Edge浏览器之间的关系很多人以为是驱动越新越好其实不是。Edge浏览器更新很快但每个大版本主版本号的WebDriver协议改动并不大。微软官方给出的匹配原则是驱动的主版本号必须与浏览器主版本号一致。也就是说Edge浏览器是92.x.x.x驱动就必须是92.x.x.x开头你拿93的驱动去驱动92的浏览器大概率能跑但属于未经测试的组合碰到奇怪的报错别意外。92.0.902.67这个驱动支持的是Edge 92.0.902.xx全系列。驱动的小版本号67是对协议实现的修补你不用去记它具体修了什么只要知道驱动主版本和浏览器主版本一致然后驱动的小版本尽量高于浏览器的小版本这样最稳。Edge会自动更新很多测试环境没锁版本策略浏览器一升级到9392的驱动就失效了——这也是为什么大家都在收藏旧版本驱动链接。// 常见错误提示出现在Selenium启动EdgeDriver时 org.openqa.selenium.WebDriverException: unknown error: cannot find Microsoft Edge binary这段伪代码不是给你抄的是让你认报错的。cannot find Microsoft Edge binary说的是找不到浏览器可执行文件不是驱动问题如果报session not created: This version of ChromeDriver/EdgeDriver only supports ...那才是版本不匹配。2.2 驱动的三种加载方式Windows上把EdgeDriver路径交给Selenium常见做法有三种。第一种把msedgedriver.exe所在目录加入系统PATH第二种在代码里用System.setProperty指定绝对路径第三种不设路径直接把msedgedriver.exe放在当前工作目录。我强烈推荐第二种理由很简单你下载的是固定版本92.0.902.67路径写死了以后排查问题时一眼就知道当前用的是哪个驱动。PATH里放着多个版本的驱动一旦顺序不对Selenium会加载一个让你摸不着头脑的版本。// Java Selenium 4.x 环境下的标准初始化写法 System.setProperty(webdriver.edge.driver, D:\\edgedriver\\92.0.902.67\\msedgedriver.exe); EdgeOptions options new EdgeOptions(); options.setCapability(ms:inPrivate, true); // 启用InPrivate模式隔离用户配置 WebDriver driver new EdgeDriver(options); driver.get(https://www.baidu.com); // 访问一个页面验证会话是通的这里的webdriver.edge.driver是Selenium读驱动路径的关键参数参数值是完整路径斜杠用双写反斜杠或者正斜杠都行。ms:inPrivate是Edge特有的capability让浏览器以无痕模式启动避免默认用户Profile里的插件、代理设置干扰测试。EdgeOptions相当于启动参数的容器里面还可以塞--headless、--disable-gpu这类Chromium参数。# Python Selenium 环境下的写法注意driver路径同样写死 from selenium import webdriver from selenium.webdriver.edge.options import Options options Options() options.use_chromium True options.binary_location rD:\edgedriver\92.0.902.67\msedgedriver.exe # 驱动的绝对路径 driver webdriver.Edge(optionsoptions)Python版稍微有点不一样use_chromium这个属性在Selenium 4.x里默认为True作用是告诉Selenium走Chromium协议的EdgeDriver而不是老版EdgeDriver。binary_location指向驱动不是浏览器浏览器位置不设也没事EdgeDriver会去注册表里找。这一步设置完以后跑一个打开空页面的测试能正常出浏览器窗口就说明驱动加载这件事已经通了。3. 下载与落盘win64 环境下的完整操作路径3.1 下载链接的选择逻辑EdgeDriver的下载页和ChromeDriver不同它只有一层页面https://developer.microsoft.com/microsoft-edge/tools/webdriver/页面上有一个下载表格按操作系统和架构分类。Win64的包名通常是edgedriver_win64.zip解压后只有一个msedgedriver.exe可执行文件加一个LICENSE文本干净利落。但是问题来了这个页面默认显示最新的稳定版驱动。2025年的今天你去下载拿到的可能是13x版本。要找92.0.902.67得走微软的旧版本存档链接。常见做法是直接改URLhttps://msedgedriver.azureedge.net/92.0.902.67/edgedriver_win64.zip。这个链接的规律是msedgedriver.azureedge.net/{版本号}/edgedriver_win64.zip。如果这个链接失效还有一个保险办法在下载页面按F12打开开发者工具切到Network面板再点一次下载看请求地址把URL里的版本号替换成92.0.902.67再访问。我一般直接记规律比现找快。3.2 解压与目录规划解压文件本身没难度难的是想清楚放哪里。你可能会觉得这是个小事实际上后面踩的坑全跟路径有关。驱动文件不要放在C:\Program Files这类带空格的目录也不要放在桌面或下载目录因为临时目录和用户目录可能被系统清理工具误删。我一般会建一个固定目录D:\edgedriver\下面按版本号分文件夹每个版本一个子目录。92.0.902.67就放D:\edgedriver\92.0.902.67\msedgedriver.exe。:: Windows下建议的目录规划脚本powershell也可以执行 mkdir D:\edgedriver\92.0.902.67 :: 将下载的zip解压到当前目录注意zip包内文件会直接顶到根目录 powershell -Command Expand-Archive -Path edgedriver_win64.zip -DestinationPath D:\edgedriver\92.0.902.67 -Force :: 验证文件是否存在 dir D:\edgedriver\92.0.902.67\msedgedriver.exeExpand-Archive的-Force参数会覆盖已有的同名文件重复执行脚本时不会报错。注意zip包根目录里就是exe没有下一层目录所以-DestinationPath指向的文件夹直接作为落地目录即可。.azureedge.net是微软的CDN域名如果在某些网络环境下下载超时换个网络环境再试这属于网络连通性问题不是链接过期。3.3 首次启动验证驱动解压完验证能不能用很简单——直接在命令行里执行msedgedriver.exe --version如果打印出版本号说明驱动文件本身能运行。如果这里报错多半是杀毒软件误删或者下载的文件不完整。文件完整性可以看文件大小和压缩包里的比对一下一般msedgedriver.exe在6~8MB左右。接着写一个最简单的启动脚本不访问任何页面只启动浏览器再关闭确认驱动和浏览器能正常建立会话。这一步能过后面所有脚本的SDK基础就是稳的。4. 避坑EdgeDriver 92.0.902.67 下载与使用的五个常见问题4.1 驱动被自动更新到新版本现象明明下载的是92.0.902.67跑了几天后脚本突然报版本不匹配看驱动路径发现文件变了。原因微软的Edge浏览器默认开启自动更新但驱动本身不会自己更新。问题出在开发环境里装了多个驱动版本系统PATH变量中排序靠前的目录里有更高版本的驱动或者下载时使用了latest路径而非固定版本路径。解决检查PATH变量里有几个msedgedriver.exe用命令where msedgedriver查看到底命中的是哪一个。然后调整PATH顺序或者在代码里用绝对路径强制指定。从那以后我每次下载驱动都直接用固定版本链接绝不用 latest 链接。4.2 下载到 x86 版本的 zip现象解压后运行msedgedriver.exe --version正常但Selenium启动时提示Cannot load driver from。原因EdgeDriver分为win32和win64两个压缩包。部分电脑虽然装了64位系统但浏览器是32位版本下载win64驱动其实能正常工作反过来32位系统下载win64驱动肯定不行。更隐蔽的情况是浏览器是64位但驱动用了32位报错信息指向加载失败。解决打开任务管理器检查Edge进程的架构或者看C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe是否存在。如果是Win64驱动在32位机器上用直接换成edgedriver_win32.zip如果架构没问题检查驱动所在目录是否有中文或空格Windows对这些路径的处理有时会超出预期。4.3 杀毒软件把 msedgedriver.exe 当成木马现象驱动下载完能运行一次第二天再运行就报找不到驱动去目录一看exe文件被隔离了。原因msedgedriver.exe是一个带命令行参数的executable特征和某些远程控制工具类似部分杀毒软件会误报。这不是微软签名的问题而是驱动本身的命令行行为触发了启发式扫描。解决把D:\edgedriver整个目录加入杀毒软件的信任区。这个操作在杀毒软件设置里都有属于基础配置。另外建议把驱动目录放在固定盘符不要放在临时目录因为临时目录清理时也会连带把exe删掉。4.4 浏览器版本已经升级到93驱动还能用92的吗现象某天Edge浏览器自动更新到93Selenium脚本立刻报错提示驱动版本需和浏览器版本匹配。原因EdgeDriver主版本号必须与Edge浏览器主版本号一致92的驱动往往能驱动93的浏览器但微软不保证实际中经常出现驱动认为浏览器版本不受支持的情况。解决如果你必须锁92.0.902.67比如公司测试环境有硬性要求需要同时锁浏览器版本。组策略里设置Edge的更新策略UpdateDefault设为false。如果只是想继续干活下载对应93版本的驱动即可。这里多说一句EdgeDriver的小版本兼容性没有标准答案只有踩坑后的经验结论所以项目里锁版本号是常态。4.5 远程调试端口被占用现象执行脚本时浏览器启动后立即退出控制台报DevToolsActivePort file doesnt exist。原因EdgeDriver启动Edge时会开一个DevTools远程调试端口默认端口是固定范围。如果电脑上已经有其他自动化工具占了端口或者浏览器没有完全退出进程还在就会报错。解决在代码里显式指定调试端口options.addArguments(--remote-debugging-port9222)。如果还是失败打开任务管理器把所有msedge.exe进程全部结束再跑一次。这不是驱动的问题是浏览器进程残留。5. 验证驱动可用性的三个技巧从版本匹配到全链路连通5.1 一键校验驱动与浏览器版本匹配每次写完Selenium脚本正式跑用例之前我会先过一遍版本匹配校验脚本。其实这个校验可以用一个三行的Python脚本完成读取两个可执行文件的版本信息然后比对主版本号避免所有用例刷出红之前才意识到是驱动问题。# 读取驱动和浏览器版本做比较主版本不一致直接拒绝执行 import re, subprocess driver_ver subprocess.run( [rD:\edgedriver\92.0.902.67\msedgedriver.exe, --version], capture_outputTrue, textTrue ).stdout # 输出示例: Microsoft Edge WebDriver 92.0.902.67 (86f005c697) browser_ver subprocess.run( [powershell, -Command, (Get-Item C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe).VersionInfo.ProductVersion], capture_outputTrue, textTrue ).stdout driver_main re.search(r(\d)\., driver_ver).group(1) browser_main re.search(r(\d)\., browser_ver).group(1) if driver_main ! browser_main: raise SystemExit(f版本不匹配: 驱动{driver_ver.strip()} vs 浏览器{browser_ver.strip()})这段脚本的核心在于用正则提取主版本号而不是直接比对完整版本号。因为驱动92.0.902.67和浏览器92.0.1100.12的主版本都是92是兼容的但如果去比小版本永远对不上。Windows下Edge浏览器的安装路径有两个Program Files和Program Files (x86)要根据实际安装位置改路径。5.2 建立一个迷你冒烟用例驱动校验过了不等于整个链路都能通。我习惯在真正跑业务用例前先跑一个启动浏览器 → 访问本地文件 → 断言页面标题的冒烟用例。注意不是访问外网因为外网可能受代理、防火墙影响干扰对驱动本身的判断。# 冒烟用例用data:URL代替外网地址隔离网络因素 from selenium import webdriver from selenium.webdriver.edge.options import Options options Options() options.add_argument(--remote-debugging-port9222) driver webdriver.Edge(optionsoptions) driver.get(data:text/html,htmltitlesmoke/titlebodyhello/body/html) assert driver.title smoke, f页面标题异常: {driver.title} driver.quit() print(冒烟通过)data:text/html是一种内嵌URL格式不会发起任何网络请求。assert如果失败会抛出异常并打印实际标题正好用来区分会话没建立和页面加载被拦截两种情况。这个用例通过后再接入公司内部测试系统基本上能把驱动问题从业务问题中摘干净。5.3 验证驱动与Selenium版本的兼容边界EdgeDriver 92.0.902.67 是2021年的产物而Selenium已经迭代到4.x甚至5.x。不少人担心老驱动配新Selenium会出问题。实测中Selenium 4.x对EdgeDriver的兼容做得不错只要协议版本匹配驱动版本偏老通常不影响基本操作。真正要注意的是Selenium 3.x和4.x的API差异比如webdriver.Edge的构造方式变了Options对象是替代DesiredCapabilities的新写法。如果你用Selenium 3.xwebdriver.Edge()默认找的是EdgeHTML驱动的路径得显式告诉它是Chromium内核。从那次被版本号折磨过以后我每次搭建自动化环境都固定走三个动作写死驱动绝对路径、锁浏览器自动更新、先跑冒烟用例再跑业务。这套流程看上去多花五分钟实际上省掉了无数次排查报错的时间。希望这篇关于EdgeDriver 92.0.902.67 win64的实战笔记能帮到你少走一段弯路。本文还有配套的精品资源点击获取
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/10/14 14:22:26
公众号线上公证办理流程详解:需要哪些材料及注意事项
2026/10/14 14:22:26
状态模式解析:行为随状态改变的设计模式
2026/10/14 14:22:26
EGM96高程异常计算实战:从球谐系数到残差校正
2026/10/14 15:23:00
自动化语料天平:基于轻量大模型的微调数据质量打分与流式筛选管道
2026/10/14 15:23:00
C#实现钢筋混凝土配筋计算:从手算表格到可复用类库
2026/10/14 15:23:00
双11容量护航演练:模拟突发Xid掉卡故障下的Pod毫秒级自愈与重调度
2026/10/14 15:23:00
多模型调用平台怎么选?先分清模型池、统一API和模型网关
2026/10/14 15:23:00
C++重建二叉树:迭代器区间法与内存安全实践
2026/10/14 15:17:56
C语言图像打印类(二重循环)题型
2026/10/14 0:02:01
Oracle 19c Windows客户端安装配置与连接排错指南
2026/10/14 0:02:01
React Native截图优化:解决Android兼容性问题
2026/10/14 0:02:01
金属锈蚀速率计算模型与防护方案优化实践
2026/10/13 12:25:09
流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南
2026/10/13 18:15:04
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别
2026/10/14 14:52:59
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容
2026/10/12 19:53:23
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
2026/10/11 21:41:11
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026/10/11 23:43:10
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)