如何禁用下载窗口在Firefox与watir-webdriver? [英] How to disable download window in firefox with watir-webdriver?

查看:198
本文介绍了如何禁用下载窗口在Firefox与watir-webdriver?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不想在Firefox或IE中处理下载窗口。我想自动下载没有任何下载窗口的Excel文件。我试图设置Firefox的几个配置参数,但它没有工作。
在我的测试中我试图下载excel文件

prerofile $ 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
$ b $ 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 $ b $ profile ['browser.download。 animateNotifications'] = false

driver = Watir :: Browser.new:firefox,:profile =>配置文件

当我的脚本在下载按钮上执行点击操作时,仍然显示下载窗口的浏览器

b
$ b

目前我在Windows-7(64bit)上使用Firefox 35.0.1

解决方案

根据文档,您应该使用浏览器.helperApps.neverAsk.saveToDisk 首选项来实现这一点。值被定义为

lockquote

一个逗号分隔的MIME类型列表保存到磁盘而不询问
打开文件。


我不是很擅长 Ruby ,但它可能看起来像

  profile [browser.helperApps.neverAsk.saveToDisk] =text / plain, application / octet-stream

只需使用正确的MIME类型即可。




我还发现这个这个回答。


I don't want to handle download window in Firefox or IE. I want to auto download the excel file without any download window. I have tried to set several configuration parameters for Firefox, but it didn't work. In my test I'm trying to download excel file

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

Still the browser displaying download window when my script performs click operation on download button

Currently I'm using Firefox 35.0.1 on Windows-7(64bit)

解决方案

As per documentation, you should use the browser.helperApps.neverAsk.saveToDisk preference to achieve this. Value is defined as

A comma-separated list of MIME types to save to disk without asking what to use to open the file. Default value is an empty string.

I am not very good at Ruby, but it will probably look something like

profile["browser.helperApps.neverAsk.saveToDisk"] = "text/plain, application/octet-stream"

Just use the correct MIME type.


I also found this, this and this answer.

这篇关于如何禁用下载窗口在Firefox与watir-webdriver?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆