运行 RSelenium 与 Opera

Running RSelenium with Opera

我正在尝试将 RSelenium 与 Opera(版本 72)一起使用。我已经从 https://github.com/operasoftware/operachromiumdriver/releases 下载了当前版本的 Opera 驱动程序。

但是,我面临着两个我还没有弄清楚的问题。

安装 Opera 驱动程序的过程是什么?我运行.exe,但是win控制台只出现了一些行。

正确的代码是什么?我最近的尝试是:

remDr = remoteDriver(remoteServerAddr = "localhost", port = 4444, browserName = "opera",extraCapabilities = list("opera.binary" = "C:[..]/operadriver.exe"))
(I also tried remDr = remoteDriver([...] /launch.exe"))
remDr$open() 

在这样做的过程中,我得到了回应:

"Undefined error in httr call. httr output: Failed to connect to localhost port 4444: Connection refused"

感谢您的任何建议。

我找到了一个可行的解决方法。

我第一次打电话:

selCommand=wdman::selenium(jvmargs = c("Dwebdriver.chrome.verboseLogging=true"), retcommand = TRUE)
cat(selCommand)

这给了我 rsDriver 使用的 chromedriver.exe 的路径(在我的例子中是 C:\Users\User\AppData\Local\binman\binman_chromedriver\win32.0.4280.20\chromedriver.exe)。接下来,我从 https://github.com/operasoftware/operachromiumdriver/releas 下载 operadriver.exe 并将其复制到此文件夹中。后来,我把原来的chromedriver.exe删掉,把operadriver.exe改名为chromedriver.exe。然后我打电话:

rD=rsDriver(browser = c("chrome"))
remDr=remoteDriver(remoteServerAddr = "localhost", port = 4567L, browserName = "chrome")
remDr=rD$client

它确实按预期工作!谁有更方便的方法?

[ 下载 opera driver and Opera ]

下载过程也可以自动化(不过这里就不贴了)

然后

se <- wdman::selenium(
  check = FALSE,
  jvmargs = list(
    opera =
      paste0(
        "-Dwebdriver.opera.driver=",
        normalizePath(
          "<give correct path>/operadriver.exe"
        )
      )
  ))

rd <- RSelenium::remoteDriver(browserName = "opera", port = 4567L)
rd$open()