Python3使用Selenium启动ChromeDriver意外退出状态码1问题求助
问题排查与解决方法
- Chrome二进制路径配置错误:你配置的
options.binary_location = '/opt/google/chrome/google-chrome'是Linux系统下Chrome的默认安装路径,而你当前使用的是Windows系统,Chrome无法找到启动程序导致进程退出。
解决:如果你的Chrome安装在默认路径,直接删除这行配置即可,Selenium会自动查找Chrome安装位置;如果是自定义安装路径,修改为对应Windows路径,示例如下:options.binary_location = r'C:\Program Files\Google\Chrome\Application\chrome.exe' - 日志路径配置错误:代码中
service_log_path = "{}/chromedriver.log".format只获取了字符串格式化方法本身,没有传入路径参数,实际传递给ChromeDriver的不是合法的路径字符串。
解决:指定完整的日志存储路径,不需要日志的话也可以直接删除该参数配置,示例正确配置:# 示例:将日志存在当前脚本所在目录 service_log_path = "./chromedriver.log" - 可选检查优化项:
- 确认Chrome浏览器大版本号和下载的chromedriver大版本号完全一致,版本不匹配也会导致启动失败
- 代码中重复导入了
selenium.webdriver,属于冗余代码,可以删除其中一次导入,不影响运行但建议优化
修改后可运行的代码参考:
from selenium import webdriver from selenium.webdriver.common.keys import Keys import time from bs4 import BeautifulSoup from selenium.webdriver.chrome.options import Options options = webdriver.ChromeOptions() # 自定义Chrome安装路径才需要保留下面这行,默认安装可以直接删除 # options.binary_location = r'C:\Program Files\Google\Chrome\Application\chrome.exe' service_log_path = "./chromedriver.log" service_args = ['--verbose'] driver = webdriver.Chrome(r'C:\Users\Funky\Downloads\chromedriver_win32\chromedriver.exe', options=options, service_args=service_args, service_log_path=service_log_path)
内容的提问来源于stack exchange,提问作者FunkyGuy
相关产品推荐
相关产品推荐

