在Eclipse中运行Selenium脚本遇ChromeDriver权限错误求助
Selenium ChromeDriver启动错误解决及Eclipse配置指南
错误原因分析
从日志核心报错listen()/bind() returned an error: An attempt was made to access a socket in a way forbidden by its access permissions. (0x271D)可以看出,ChromeDriver无法绑定指定端口,导致服务启动失败,进而引发超时错误。
针对性解决方法
- 端口占用/权限限制
- 检查目标端口(日志中为23679)是否被占用:打开命令提示符执行
netstat -ano | findstr :23679,找到对应PID后在任务管理器结束该进程 - 手动指定未被占用的端口,修改代码:
ChromeOptions options = new ChromeOptions(); options.addArguments("--remote-debugging-port=9222"); // 替换为可用端口 WebDriver driver = new ChromeDriver(options);
- 检查目标端口(日志中为23679)是否被占用:打开命令提示符执行
- 版本不匹配
确认本地Chrome浏览器版本与ChromeDriver版本完全一致(日志中ChromeDriver为114.0.5735.90,需确保Chrome也是114.x系列),版本不一致会导致启动失败,下载对应版本的ChromeDriver替换即可 - 权限不足
右键以管理员身份运行Eclipse,避免因系统权限不足无法绑定端口 - 安全软件拦截
临时关闭防火墙或第三方安全软件,测试是否能正常启动;验证后将ChromeDriver和Eclipse加入安全软件信任列表 - Selenium版本过时
当前使用的Selenium 3.141.59发布于2018年,对高版本Chrome支持有限,建议升级到Selenium 4.x稳定版,提升兼容性与稳定性
Selenium与Eclipse完整配置步骤
1. 基础环境准备
- 安装最新版Eclipse IDE
- 安装JDK 8及以上版本(推荐11/17),配置
JAVA_HOME环境变量并添加到系统PATH
2. 创建Java项目
- 打开Eclipse,点击
File > New > Java Project,输入项目名称后完成创建 - 右键项目下的
src文件夹,创建新的Java类用于编写测试代码
3. 添加Selenium依赖
方式一:手动导入Jar包
- 下载对应版本的Selenium Java包(包含
selenium-java.jar及libs文件夹内所有依赖Jar) - 在项目根目录创建
lib文件夹,将所有Jar包复制到该文件夹 - 选中
lib内所有Jar,右键选择Build Path > Add to Build Path
方式二:Maven管理(推荐)
- 右键项目,选择
Configure > Convert to Maven Project - 在
pom.xml中添加Selenium依赖:<dependencies> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>4.11.0</version> <!-- 替换为最新稳定版 --> </dependency> </dependencies> - 右键项目,选择
Maven > Update Project自动下载依赖
4. 配置ChromeDriver
方式一:手动指定路径
- 下载与Chrome版本匹配的ChromeDriver
- 在代码中指定驱动路径:
System.setProperty("webdriver.chrome.driver", "C:\\path\\to\\chromedriver.exe"); // 替换为实际路径 WebDriver driver = new ChromeDriver();
方式二:环境变量配置
将ChromeDriver.exe放入系统PATH已包含的文件夹(如JDK的bin目录),无需在代码中指定路径
方式三:WebDriverManager自动管理(Selenium 4.x推荐)
- 在
pom.xml中添加WebDriverManager依赖:<dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.4.1</version> </dependency> - 代码中自动配置驱动:
WebDriverManager.chromedriver().setup(); WebDriver driver = new ChromeDriver();
内容的提问来源于stack exchange,提问作者Manasa Reddy
相关产品推荐
相关产品推荐

