Я бы хотел запустить хром МЕСТНО, а не chrome, используя RSelenium. Я попробовал приведенные ниже попытки кода, но не могу заставить его работать (я запускаю Ubuntu):
Запуск в качестве автономного образа работает, но я считаю, что автономный вариант менее стабилен, чем локально запущенный экземпляры селена. По этой причине я хотел бы иметь возможность запускать хром напрямую локально, а не с помощью автономного образа. Также это работает, только если у вас установлен хром, а не chrome:
#RUNNING STANDALONE WORKS AS BELOW IF CHROME IS NOT INSTALLED (with automatic download of the standalone file):
port <- 4444
if(!file.exists(paste0(getwd(),"/tempjar/selenium-server-standalone-3.141.59.jar"))){
download.file(url="https://selenium-release.storage.googleapis.com/3.141/selenium-server-standalone-3.141.59.jar",destfile="tempjar/selenium-server-standalone-3.141.59.jar")
Sys.sleep(2)
system(paste0("unzip -o ",getwd(),"/tempjar/selenium-server-standalone-3.141.59.jar -d ",getwd(),"/tempjar/"), wait=T)
Sys.sleep(1)
Sys.setenv(Dwebdriver.chrome.driver=paste0(getwd(),"/tempjar/selenium-server-standalone-3.141.59.jar"))
Sys.sleep(1)
}
}
system(paste0("java -jar ",getwd(),"/tempjar/selenium-server-standalone-3.141.59.jar -port ",port), wait=F)
Sys.sleep(5)
library(RSelenium)
###launches chromium if chrome is NOT INSTALLED:
remDr <- remoteDriver(remoteServerAddr="localhost",port=port,browserName="chrome", extraCapabilities=eCaps) ###WORKS
remDr$open() ###WORKS
Попытка # 1 для локального запуска без автономного режима (не работает):
library(RSelenium)
eCap <- list(chrome.binary.path = "/usr/bin/chromium-browser")
remDr <- rsDriver(browserName="chrome", extraCapabilities=eCap)
#ERROR Returned:
Could not open chrome browser.
Client error message:
Summary: SessionNotCreatedException
Detail: A new session could not be created.
Further Details: run errorDetails method
Check server log for further details.
Попытка № 2 для локального запуска без автономного режима (не работает):
remDr <- remoteDriver(remoteServerAddr="localhost", browser="chrome",extraCapabilities = eCap, port=8080)
remDr$open()
#SAME ERROR USING either browser="chrome" -OR- browser="chromium":
[1] "Connecting to remote server"
Error in checkError(res) :
Undefined error in httr call. httr output: Failed to connect to localhost port 8080: Connection refused