问题:在 Ubuntu 14.04 中使用 PhantomJS 1.9.0、RSelenium 的空白页面

尝试导航到任何页面时出现空白页面,并且找不到任何 DOM 元素。我已经尝试过使用我已经拥有的 2 台不同的机器,它们都是 Ubuntu 14.04 Server。

library("RSelenium")
pJS <- phantom()
nav <- remoteDriver(remoteServerAddr = "localhost", port = 4444, browserName = "phantomjs")

nav$open()
nav$navigate("https://airenetworks.es/")
geco <- nav$findElement(using = "partial link text", value = "Oficina Virtual")
geco$clickElement()

这段代码最后一行的错误是:

Error:   Summary: NoSuchElement
     Detail: An element could not be located on the page using the given search parameters.
     class: SessionReqHand

通过install.packages("RSelenium")安装 RSelenium,通过apt-get install phantomjs安装 PhantomJS。demo("PhantomJSUserAgent")也失败了。

如果在这种状态下我执行nav$screenshot(display = TRUE)我得到的图像全是白色的。如果您需要图像数据,它是:

iVBORw0KGgoAAAANSUhEUgAAAZAAAAEsCAYAAADtt+XCAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEwAACxMBAJqcGAAAAehJREFUeJztwTEBAAAAwqD1T20ND6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4N1SVAAH5HdPnAAAAAElFTkSuQmCC

如果您需要更多信息,请询问。谢谢!

解答

我终于发现我必须将其编码为:

pJS <- phantom(extras = "--ignore-ssl-errors=true --ssl-protocol=tlsv1")
Sys.sleep(2)
nav <- remoteDriver(remoteServerAddr = "localhost", port = 4444, browserName = "phantomjs")

您必须将协议设置为tlsv1。同样重要的是让它休眠一两秒钟,因为它需要时间才能启动(经过一些试验和错误,我意识到在调用remoteDriver函数之前我需要Sys.sleep(2))

Logo

Ubuntu 社区为您提供最前沿的新闻资讯和知识内容

更多推荐