【问题标题】:How to use OperaChromiumDriver for opera version >12.X如何将 OperaChromiumDriver 用于 Opera 版本 >12.X
【发布时间】:2015-02-04 11:42:42
【问题描述】:

我知道,为了在 Opera 版本 > 12.X 上工作,已经开发了 Operachromiumdriver。与此同时,我无法让它发挥作用。我从https://github.com/operasoftware/operachromiumdriver/releases 下载了operachromiumdriver.exe 的windows 版本,但无济于事。有人可以帮我弄这个吗 。请告诉我我的理解是否正确。

谢谢

【问题讨论】:

  • 请添加一些您尝试过如何使用operachromiumdriver.exe的代码

标签: selenium-webdriver opera


【解决方案1】:

我找到了使用 OperaChromiumDriver.exe 运行 Opera 25+ 的解决方案。

  1. 安装 Opera 25+(我安装了 Opera 25)
  2. 下载OperaChromiumDriverhttps://github.com/operasoftware/operachromiumdriver/releases
  3. 将 zip 文件解压缩到计算机上的某个位置
  4. 使用以下代码打开Opera

    System.setProperty("webdriver.chrome.driver", "C:/Users/user/Downloads/operadriver-0.1.0-win32/operadriver-0.1.0-win32.exe");
    WebDriver driver = new ChromeDriver();
    driver.get("https://www.google.com");
    driver.findElement(By.name("q")).sendKeys("Selenium");
    

我用过new ChromeDriver()。这将启动 Opera,因为我们使用的是OperaChromiumDriver。我认为这是因为新的 Opera 是基于 Chromium 的,而 OperaChromiumDriver 是从 ChromeDriver 派生的 WebDriver 实现 [参见https://github.com/operasoftware/operachromiumdriver]

希望对你有所帮助。

【讨论】:

  • 谢谢。会试试这个并回复你
【解决方案2】:

OperaChromiumDriver 现在适用于 Opera 26+,但目前仅适用于远程实例...从

下载并启动相应的二进制文件

OperaChromiumDriver Binary Releases

他们在 python 中提供了桌面版本的示例,但在 Java 中这对我有用。许多 ChromeOptions 不工作,虽然它说它们应该......你必须测试才能确定,但​​ setBinary 确实工作。

DesiredCapabilities capabilities = DesiredCapabilities.opera();

ChromeOptions options = new ChromeOptions();
options.setBinary("/path/to/opera");

capabilities.setCapability(ChromeOptions.CAPABILITY, options);

driver = new RemoteWebDriver(new URL("http://127.0.0.1:9515"),capabilities);

【讨论】:

【解决方案3】:

Operachromiumdriver

下载 selenium Drivers。由于没有直接的opera驱动,OperaChromiumDriver是基于ChromeDriver的,所以我们使用ChromeOptions来设置operadriver.exe的二进制位置

从 26 版开始的基于 Chromium 的 Opera 版本。

String operaChromiumDriver = "E:\\Drivers\\operadriver.exe";
String operaBrowserLocation = "C:\\......\\opera.exe"

System.setProperty("webdriver.opera.driver", operaChromiumDriver);

ChromeOptions options = new ChromeOptions();
options.setBinary(operaBrowserLocation);        

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
OperaDriver browser = new OperaDriver(capabilities);

WebDriver driver =browser;
driver.get("https://in.yahoo.com/");

感谢 Lukus Answer(1) 完成我的工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-01
    • 2012-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多