如何用Selenium Java启动Opera浏览器?解决API废弃报错问题
解决Selenium Java中OperaDriver废弃报错的更新方案
原代码里的OperaDriver类及其无参构造方法已被Selenium官方废弃,原因是当前Opera基于Chromium内核,Selenium 4+版本推荐通过Chromium相关API来实现Opera浏览器的自动化控制,以下是两种可行的更新方案:
方案一:使用WebDriverManager自动管理驱动(推荐)
该方案无需手动下载和配置驱动路径,WebDriverManager会自动匹配并下载对应版本的OperaDriver,同时处理版本兼容性问题。
步骤1:添加依赖
如果使用Maven,在pom.xml中添加WebDriverManager的依赖:
<dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.6.3</version> <!-- 可替换为最新稳定版 --> </dependency>
步骤2:修改代码
package donald; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import io.github.bonigarcia.wdm.WebDriverManager; public class sweet_scrape { // 注意Java类名规范,不能使用连字符,建议改为`sweet_scrape`或驼峰式`SweetScrape` public static void main(String[] args) { // 配置ChromeOptions,指定Opera浏览器的二进制文件路径 ChromeOptions options = new ChromeOptions(); // 替换为你的Opera实际安装路径,Windows默认路径示例如下 options.setBinary("C:\\Program Files\\Opera\\launcher.exe"); // 自动下载并配置对应版本的OperaDriver WebDriverManager.operadriver().setup(); // 初始化WebDriver实例 WebDriver driver = new ChromeDriver(options); // 打开目标网站 driver.get("https://www.jiji.ng"); } }
方案二:手动配置驱动路径
若不想使用WebDriverManager,可手动下载对应版本的OperaDriver,再通过ChromeOptions指定Opera二进制文件路径来初始化驱动。
修改后的代码
package donald; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; public class sweet_scrape { // 修正类名规范,避免使用连字符 public static void main(String[] args) { // 设置OperaDriver的本地路径 System.setProperty("webdriver.chrome.driver", "C:\\Visual Studio\\WebScraper\\sweet-scraper\\drivers\\operadriver.exe"); // 配置ChromeOptions,指定Opera浏览器的二进制文件路径 ChromeOptions options = new ChromeOptions(); options.setBinary("C:\\Program Files\\Opera\\launcher.exe"); // 替换为你的Opera实际安装路径 // 初始化WebDriver实例 WebDriver driver = new ChromeDriver(options); // 打开目标网站 driver.get("https://www.jiji.ng"); } }
注意事项
- 必须确保OperaDriver版本与你的Opera浏览器版本完全匹配,否则会出现兼容性问题
- Opera二进制文件路径需根据实际安装位置调整:
- Mac系统默认路径:
/Applications/Opera.app/Contents/MacOS/Opera - Linux系统默认路径:
/usr/bin/opera
- Mac系统默认路径:
内容的提问来源于stack exchange,提问作者donaldekpe
相关产品推荐
相关产品推荐

