Python Selenium调用ChromeDriver报WinError 193错误如何解决?
这个OSError: [WinError 193] %1 is not a valid Win32 application报错的核心原因是你使用的ChromeDriver和本地Windows系统位数、Chrome浏览器版本不匹配,或是驱动文件损坏、路径读取异常导致,按以下步骤修复即可:
修复步骤
1. 确认本地Chrome浏览器版本
- 打开Chrome浏览器,点击右上角菜单→帮助→关于Google Chrome,即可查看当前浏览器的完整版本号,例:
119.0.6045.105
2. 下载匹配的ChromeDriver
- 下载和你浏览器大版本号完全一致的ChromeDriver,同时匹配你的Windows系统位数:64位系统下载64位版本驱动,32位系统下载32位版本驱动
- 下载完成后将
chromedriver.exe放到不含中文、空格、特殊字符的普通路径下,比如直接放在C:\根目录,不要放在需要管理员权限的系统目录(比如Program Files、Program Files (x86)),避免权限不足无法读取文件
3. 修正代码问题
你原有代码还存在两个可优化点,高版本Selenium(4.6及以上)已经内置自动驱动管理功能,不需要手动指定ChromeDriver路径,同时get()方法需要补全URL的https://协议前缀,修正后代码如下:
from selenium import webdriver # 自动匹配对应版本的ChromeDriver,无需手动指定路径 driver = webdriver.Chrome() # 补全协议前缀,否则无法正常访问页面 driver.get("https://www.google.com")
如果你使用的是旧版本Selenium,需要手动指定驱动路径,注意在路径前加r标记为原始字符串,避免转义符解析错误:
from selenium import webdriver PATH = r"C:\chromedriver.exe" driver = webdriver.Chrome(PATH) driver.get("https://www.google.com")
4. 验证修复结果
运行修正后的代码,如果Chrome浏览器正常弹出并加载谷歌首页,说明问题已解决。如果仍有报错,检查下载的ChromeDriver文件是否完整,是否和浏览器、系统版本完全匹配。
内容的提问来源于stack exchange,提问作者NeedforAnwserslol
相关产品推荐
相关产品推荐

