有一些与SO (Question 1)(Question 2)中已经问过的问题类似,但没有一个得到答案(最后一个问题由@jdharrison提出相关意见,指示OP提出问题)。这是我的问题:

我曾经有一个非常简单的脚本,可以将网站中的某些信息获取到R中:

startServer()
rd<-remoteDriver(remoteServerAddr="localhost",port=4444,browserName="firefox")
rd$open()
rd$navigate(url) #with a defined url


现在,当我尝试运行脚本时,在rd$open()之后,确实会打开一个firefox窗口(该窗口保持空白约30秒钟),然后关闭并返回错误:

rd$open()
[1] "Connecting to remote server"
Error:   Summary: UnknownError
     Detail: An unknown server-side error occurred while processing the command.
     class: org.openqa.selenium.firefox.NotConnectedException


通过阅读SO和其他一些站点上的不同文章,似乎问题是由Firefox和RSelenium版本的不兼容引起的。

在GitHub的硒论坛上,有一个thread,其中指出将硒从2.44更新到2.45可以解决问题。但是,如果RSelenium似乎是最新的,我对如何更新硒一无所知:

sessionInfo()
R version 3.1.2 (2014-10-31)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=Spanish_Colombia.1252
[2] LC_CTYPE=Spanish_Colombia.1252
[3] LC_MONETARY=Spanish_Colombia.1252
[4] LC_NUMERIC=C
[5] LC_TIME=Spanish_Colombia.1252

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods
[7] base

other attached packages:
[1] RSelenium_1.3.5 XML_3.98-1.1    RJSONIO_1.3-0   RCurl_1.95-4.3
[5] bitops_1.0-6

loaded via a namespace (and not attached):
[1] caTools_1.17.1 tools_3.1.2


和我的构建(可能是元凶):

rd$getStatus()
$build
$build$version
[1] "2.44.0"

$build$revision
[1] "76d78cf"

$build$time
[1] "2014-10-23 20:02:37"


$os
$os$name
[1] "Windows 8"

$os$arch
[1] "amd64"

$os$version
[1] "6.2"


$java
$java$version
[1] "1.7.0_45"


我该如何从R更新硒(当然,如果这有意义),

更好的是:如何避免以前工作的脚本中显示的错误?

谢谢!

最佳答案

更新硒服务器就足以继续使用我的实际firefox版本(37.0.1)。
运行代码:

unlink(system.file("bin", package = "RSelenium"), recursive = T)
checkForServer()


我的RSelenium版本从2.44更新到2.45。我立即能够像以前一样打开浏览器。

08-19 22:04