使用Selenium启动Chrome浏览器时遭遇SessionNotCreatedException异常
Selenium启动Chrome失败的解决方法
你代码里的核心问题是:webdriver.chrome.driver参数指定的是Chrome浏览器的chrome.exe路径,但这个参数应该指向ChromeDriver.exe的执行文件——这就是导致浏览器启动失败、端口绑定超时的根本原因。
解决步骤:
- 下载和你Chrome浏览器版本完全匹配的ChromeDriver。ChromeDriver版本必须和Chrome主版本号一致,比如Chrome是118.x,就下载对应118.x系列的ChromeDriver。
- 修改代码中的路径,将原来的
chrome.exe替换为chromedriver.exe的实际存放路径。 - (可选)控制台的SLF4J警告是因为项目缺少SLF4J的日志实现依赖,不影响浏览器启动。如果想消除警告,可以在项目依赖中添加SLF4J的绑定包(比如logback-classic)。
修正后的代码示例:
// 替换为你的chromedriver.exe实际路径 System.setProperty("webdriver.chrome.driver","C:/Users/PrasadB/Downloads/chromedriver-win64/chromedriver.exe"); WebDriver driver = new ChromeDriver();
更简洁的写法(Selenium 4.6+):
如果你使用的是Selenium 4.6及以上版本,无需手动设置驱动路径,Selenium会自动管理驱动,直接实例化即可:
WebDriver driver = new ChromeDriver();
内容的提问来源于stack exchange,提问作者Prasad Balaga
相关产品推荐
相关产品推荐

