简体   繁体   English

RSelenium:设置用于Mac OS X的makeFirefoxProfile以下载文件而无需询问

[英]RSelenium: Setting makeFirefoxProfile for Mac OS X to download files without asking

How should I set RSelenium Firefox profile under Mac OS X? 如何在Mac OS X下设置RSelenium Firefox配置文件?

I tried to replicate this code (for Windows) but Firefox keeps showing me the download popup. 我尝试复制此代码 (适用于Windows),但Firefox不断向我显示下载弹出窗口。

require(RSelenium)

my_firefox_profile <- makeFirefoxProfile(
  list(browser.download.dir = "~/Downloads/tmp",
       browser.download.folderList = "2",
       browser.download.manager.showWhenStarting = "false",
       browser.helperApps.neverAsk.saveToDisk = "text/csv/xls"))

RSelenium::startServer()
remDr <- remoteDriver(extraCapabilities = my_firefox_profile)
remDr$open()
remDr$navigate('http://www.rapidtables.com/web/html/link/html-download-link.htm')


webElem <- remDr$findElement(using = 'xpath', "//*[@id='doc']/p[6]/a")
webElem$clickElement()


remDr$close()
remDr$closeServer()

Also on RSelenium developer git repo page there's an additional way to set the browser profile 同样在RSelenium开发人员的git repo页面上,还有另一种设置浏览器配置文件的方法

extraCapabilities <- list("browser" = "IE",
                          "browser_version" = "7.0",
                          "os" = "Windows",
                          "os_version" = "XP",
                          "browserstack.debug" = "true")
remDr <- remoteDriver$new(remoteServerAddr = ip, port = port
                          , extraCapabilities = extraCapabilities)

which I also tried with no success. 我也尝试没有成功。

I had a similar problem with some .csv files that I was trying to download. 我尝试下载的某些.csv文件有类似的问题。 Similarly, I had the line browser.helperApps.neverAsk.saveToDisk = "text/csv/xls")) in my code. 类似地,我的代码中包含了browser.helperApps.neverAsk.saveToDisk = "text/csv/xls")) However, Firefox saw these as binary files. 但是,Firefox将它们视为二进制文件。 Check what it says on the download window, if yours are similar then this code will work: 检查下载窗口上的内容,如果您的内容与之相似,则此代码将起作用:

fprof <- makeFirefoxProfile(list(browser.download.dir = [YOUR DOWNLOAD FOLDER],
                  browser.download.folderList = 2L, 
                  browser.download.manager.showWhenStarting=FALSE,
                  browser.helperApps.neverAsk.saveToDisk = "application/octet-stream"))
remDr <- remoteDriver(extraCapabilities=fprof)
remDr$open()

Hope that helps. 希望能有所帮助。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM