You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行Python Selenium测试时报错[WinError 193] %1不是有效的Win32应用

错误原因

OSError: [WinError 193] %1 is not a valid Win32 application 报错本质是系统无法识别你代码调用的chromedriver.exe为合法的Windows可执行文件,结合你之前运行正常、重启后报错的场景,常见诱因如下:

  • chromedriver.exe文件损坏:重启过程中磁盘写入异常、杀毒软件后台扫描时误篡改/隔离驱动文件,都会导致原本正常的可执行文件失效
  • 驱动路径异常:驱动文件被手动移动、重命名,导致代码里拼接的相对路径没有指向正确的驱动文件
  • 版本不匹配:Chrome浏览器后台自动更新后,和当前chromedriver.exe版本不兼容
排查解决步骤
  1. 验证驱动文件本身有效性
    找到代码中对应路径下的chromedriver.exe(你的场景下路径为C:\Projects\tests\libs\chromedriver.exe),直接双击运行:
    • 如果弹出不是有效的Win32应用提示,直接确认文件损坏,删除现有驱动,重新下载和当前Chrome版本匹配、和系统架构(32/64位)对应的ChromeDriver替换即可
    • 如果能正常弹出黑色命令行窗口显示驱动启动日志,说明驱动文件本身正常,进入下一步排查
  2. 校验路径正确性
    在setUpClass方法中打印拼接后的驱动路径,确认路径指向正确:
chromedriver_path = os.path.join(os.path.dirname(os.path.realpath(__file__)), r"libs\chromedriver.exe")
# 新增以下两行校验
print("驱动路径:", chromedriver_path)
print("路径是否存在:", os.path.exists(chromedriver_path))

如果打印结果显示路径不存在,修正路径配置即可。
3. 排查安全软件限制
打开本机杀毒软件(Windows Defender、第三方安全软件等)的查杀日志、隔离区,确认chromedriver.exe是否被误隔离,恢复后加入白名单即可。
4. 校验版本匹配度
打开Chrome浏览器地址栏输入chrome://version/,确认当前浏览器实际版本,和chromedriver.exe版本大版本号必须完全一致,如果浏览器已自动更新,下载对应版本的驱动替换即可。
5. 可选长效方案:自动管理驱动
安装webdriver-manager依赖自动匹配下载对应驱动,无需手动维护驱动版本和路径:

pip install webdriver-manager

修改驱动初始化代码:

from webdriver_manager.chrome import ChromeDriverManager
# 替换原有Service初始化逻辑
ser = Service(ChromeDriverManager().install())

内容的提问来源于stack exchange,提问作者pbaranski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 02:15:00