RSelenium与RSDriver。 错误:httr输出:无法连接到本地主机端口4445:拒绝连接。

4
我正在尝试使用RSelenium进行网络爬虫。我正在按照cran上的基础教程进行操作。推荐的方法是安装Docker(请参考教程以及stackoverflow答案)。如果我理解正确,对于我来说这不是一个选项,因为我正在使用Windows 7,在这个系统上似乎没有可用的Docker(请参见docker论坛)。
因此,我正在尝试使用RSDriver的第二个选项。我运行:
RSelenium::rsDriver()

remDr <- remoteDriver(
  remoteServerAddr = "localhost",
  port = 4445L,
  browserName = "firefox"
)
    
remDr$open()

并且收到错误信息

> remDr$open()
[1] "Connecting to remote server"
Error in checkError(res) : 
  Undefined error in httr call. httr output: Failed to connect to localhost port 4445: Connection refused

这个问题之前在这里这里这里这里已经被询问并回答过,尽管它们都是关于使用Docker时相同的错误,但它们的解决方案对我没有用。

在Windows 7上,有没有任何选项可以通过rsDriver运行这个程序?


1
我有完全相同的问题。你能解决它吗? - Nivel
1
晚回答:不,对我来说问题仍未解决。最终我选择了Python Selenium。 - eigenvector
3个回答

0

问题指定在Windows上,答案应该不仅仅是一个链接。 - camille
发布了一种Mac解决方案,因为如果专门针对Mac提出该问题,它将被标记为重复。答案是从链接安装软件以获得分辨率。 - Jeff Parker

0

使用 RSelenium 版本 1.7.7,这是一个解决方法:

library(RSelenium)

remDr <- rsDriver(
  port = 4445L,
  browser = "firefox"
)

这个命令将服务器设置和驱动程序初始化结合在一起。


0
您可以考虑以下两种方法来使用RSelenium:
library(RSelenium)

shell('docker run -d -p 4446:4444 selenium/standalone-firefox') # Docker has to be installed
remDr <- remoteDriver(remoteServerAddr = "localhost", port = 4446L, browserName = "firefox")
remDr$open()
remDr$navigate("https://www.my_Website.com")

library(RSelenium)
library(wdman)

port <- as.integer(4444L + rpois(lambda = 1000, 1))
pJS <- wdman::phantomjs(port = port)
remDr <- remoteDriver(browserName = "phantomjs", port = port)
remDr$open()
remDr$navigate("https://www.my_Website.com")

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接