我不想在Firefox或IE中处理下载窗口。我想在没有任何下载窗口的情况下自动下载excel文件。我试图为Firefox设置几个配置参数,但它不起作用。 在我的测试中,我正在尝试下载excel文件
profile = Selenium::WebDriver::Firefox::Profile.new
profile['browser.download.lastDir'] = 'C:\\Downloads'
profile['browser.download.folderList'] = 2
profile['browser.download.dir'] = 'C:\\Downloads'
profile['download.prompt_for_download'] = false
profile['browser.download.manager.showWhenStarting'] = false
profile['browser.download.manager.addToRecentDocs'] = true
profile['browser.download.manager.useWindow'] = false
profile['browser.download.useDownloadDir'] = true
profile['browser.download.show_plugins_in_list'] = true
profile['browser.download.manager.openDelay'] = 100000
profile['browser.download.animateNotifications'] = false
driver = Watir::Browser.new :firefox, :profile => profile
当我的脚本在下载按钮上执行点击操作时,浏览器仍显示下载窗口
目前我在Windows-7(64位)上使用Firefox 35.0.1
答案 0 :(得分:2)
根据documentation,您应该使用browser.helperApps.neverAsk.saveToDisk
首选项来实现此目的。值定义为
以逗号分隔的MIME类型列表,可在不询问的情况下保存到磁盘 用什么来打开文件。默认值为空字符串。
我不是很擅长Ruby
,但它可能看起来像
profile["browser.helperApps.neverAsk.saveToDisk"] = "text/plain, application/octet-stream"
只需使用正确的MIME类型。