尝试运行不建议使用的
checkForServer()Selenium时,有两种选择:
- 使用rsDriver
- 使用Docker
看到:
RSelenium::checkForServer()# Error: checkForServer is now defunct. Users in future can find the function in # file.path(find.package("RSelenium"), "examples/serverUtils"). The# recommended way to run a selenium server is via Docker. Alternatively# see the RSelenium::rsDriver function.大家似乎 对发生问题rsDriver和码头工人是推荐的选项,所以我们走的这条路:
- 安装码头工人
- 运行它,按要求重新启动计算机
- 通过在命令行中
docker pull selenium/standalone-firefox
(或chrome
代替firefox
)或在R中运行来拉取图像shell('docker pull selenium/standalone-firefox') - 通过在命令行中
docker run -d -p 4445:4444 selenium/standalone-firefox
或在R中运行来启动服务器shell('docker run -d -p 4445:4444 selenium/standalone-firefox') - 然后运行
remDr <- remoteDriver(remoteServerAddr = "localhost", port = 4445L, browserName = "firefox'")
。该文档对虚拟机提出了一些不同的建议,但我无法使其正常工作。
设置了这个,这是我的代码:
shell('docker run -d -p 4445:4444 selenium/standalone-firefox')remDr <- remoteDriver(remoteServerAddr = "localhost", port = 4445L, browserName = "firefox")remDr$open()remDr$navigate("http://www.google.com/ncr")remDr$getTitle()# [[1]]# [1] "Google"有关更多信息的文档:
- https://cran.r-project.org/web/packages/RSelenium/vignettes/RSelenium-basics.html
- https://cran.r-project.org/web/packages/RSelenium/vignettes/RSelenium-docker.html



