RSelenium无头认证下载文件

时间:2016-04-26 13:21:27

标签: r phantomjs

我想将此代码用于无头浏览器(例如phantomjs或casperjs),然后在最后下载csv文件(而不是本机浏览器的保护程序弹出对话框)。

library("RSelenium")
startServer()
mybrowser <- remoteDriver(browserName = 'chrome')
mybrowser$open()
mybrowser$navigate("http://steamspy.com/login/")
wxbox <- mybrowser$findElement(using = 'xpath', "//*/input[@name = 'username']")
wxbox$sendKeysToElement(list("myusername"))
wxbox <- mybrowser$findElement(using = 'xpath', "//*/input[@name = 'password']")
wxbox$sendKeysToElement(list("mypassword"))
wxbutton <- mybrowser$findElement(using = 'xpath', "//*/button[@name = 'submit']")
wxbutton$clickElement()
mybrowser$navigate("http://steamspy.com/sale.php?tagid=0&from=2015-04-01&to=2016-04-25&submit=")
wxbutton <- mybrowser$findElement(using = 'css selector', "#ToolTables_tablesales_0")
wxbutton$clickElement()

只需将chrome更改为phantomjs,即可在打开并导航页面时出现以下错误:

Error:   Summary: UnknownError
     Detail: An unknown server-side error occurred while processing the command.
     class: org.openqa.selenium.UnsupportedCommandException

1 个答案:

答案 0 :(得分:0)

如果您还没有安装PhantomJS:转到Here。下载windows zip文件并解压缩;

通过转到控制面板 - &gt;将 phantoms.exe 的路径添加到环境变量路径中,该路径通常位于 extractedFolder \ bin 中。系统 - &gt;高级系统设置 - &gt;环境变量,并添加PATH变量的路径,如果你已经知道如何,请忽略它;

重新启动您的RStudio或R会话;

运行以下命令:

library(RSelenium)
pJS <- phantom()
myBrowser <- remoteDriver(browserName = "phantomjs")
myBrowser$open()