【问题标题】:Why can't I connect to Selenium Server?为什么我无法连接到 Selenium Server?
【发布时间】:2017-10-01 20:34:57
【问题描述】:

我的 RSelenuium 脚本今天停止工作,我不明白为什么。下面的代码是我通常用来启动服务器的代码。

library(RSelenium)

rd <- rsDriver(port = 4567L, browser = "chrome")

但现在我收到以下错误消息:

checkError(res) 中的错误: 无法连接到 http://localhost:4567/wd/hub 上的主机。 请确保 Selenium 服务器正在运行。 另外:警告信息: 在 rsDriver(port = 4567L, browser = "chrome") : 无法确定服务器状态。

然后我尝试以下代码:

selServ <- wdman::selenium(verbose = FALSE)
selServ$log()

然后我得到以下错误:

$stderr [1]“错误:无效或损坏的 jarfile C:\Users\Allan\AppData\Local\binman\binman_seleniumserver\generic\3.6.0/selenium-server-standalone-3.6.0.jar”

$stdout 字符(0)

那么我该如何解决这个问题?

【问题讨论】:

  • 你试过重新下载jar并重启服务器吗?
  • @BryanOakley,感谢您的快速回复。我删除并重新安装了 RSelenium 包,并希望重新下载 jar。有没有其他方法可以重新下载jar?
  • 再次感谢@BryanOakley,效果很好!

标签: r rselenium


【解决方案1】:

您可以使用binman 包删除版本:

> binman::list_versions("seleniumserver")
$generic
 [1] "3.0.0"       "3.0.0-beta4" "3.0.1"       "3.1.0"       "3.2.0"      
 [6] "3.3.0"       "3.3.1"       "3.4.0"       "3.5.0"       "3.5.1"      
[11] "3.5.2"       "3.5.3"       "3.6.0"      

> binman::rm_version("seleniumserver", "generic", "3.6.0")
Removing version: 3.6.0 from platorm: generic

运行rsDriver会重新下载损坏的JAR:

> rD <- rsDriver()
checking Selenium Server versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
Creating directory: C:\Users\john\AppData\Local\binman\binman_seleniumserve...
Downloading binary: https://www.googleapis.com/download/storage/v1/b/seleni...

BEGIN: POSTDOWNLOAD
checking chromedriver versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
checking geckodriver versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
checking phantomjs versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
[1] "Connecting to remote server"

# clean up
rm(rD)
gc()

【讨论】:

  • 感谢@jdharrison 的提示,下次我会使用它。
猜你喜欢
  • 2017-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-17
  • 2017-07-30
  • 1970-01-01
  • 2021-01-18
相关资源
最近更新 更多