使用硒文件下载 [英] File download using selenium
本文介绍了使用硒文件下载的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我必须下载一个文本文件。为了直接下载它,我创建了一个Firefox配置文件,它应该避免
保存/取消
对话框...但是对话框还在继续。 我的代码如下:
FirefoxProfile fxProfile = new FirefoxProfile();
fxProfile.setPreference(browser.download.folderList,2);
fxProfile.setPreference(browser.download.manager.showWhenStarting,false);
fxProfile.setPreference(browser.download.dir,c:\\tmp);
fxProfile.setPreference(browser.helperApps.alwaysAsk.force,false);
fxProfile.setPreference(browser.helperApps.neverAsk.saveToDisk,text / plain);
driver.findElement(By.id(link-download))。click();
我无法找到对话框仍然打开的原因。
任何想法?
在此先感谢。
解决方案
$ b 当创建驱动程序时,Firefox配置文件必须作为参数传递,如下所示:
FirefoxProfile fxProfile = new FirefoxProfile();
fxProfile.setPreference(browser.download.folderList,2);
fxProfile.setPreference(browser.download.manager.showWhenStarting,false);
fxProfile.setPreference(browser.download.dir,c:\\tmp);
fxProfile.setPreference(browser.helperApps.alwaysAsk.force,false);
fxProfile.setPreference(browser.helperApps.neverAsk.saveToDisk,application / octet-stream);
$ b $ setDriver(TestBench.createDriver(new FirefoxDriver(fxProfile)));
我创建没有参数的驱动程序。现在它正在工作。
I am using selenium for testing a system.
I have to download a text file. In order to download it directly I've created a Firefox profile which should avoid the Save / cancel
dialog... butthe dialog is still coming.
My code is as follows:
FirefoxProfile fxProfile = new FirefoxProfile();
fxProfile.setPreference("browser.download.folderList",2);
fxProfile.setPreference("browser.download.manager.showWhenStarting",false);
fxProfile.setPreference("browser.download.dir","c:\\tmp");
fxProfile.setPreference("browser.helperApps.alwaysAsk.force", false);
fxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk","text/plain");
driver.findElement(By.id("link-download")).click();
I cannot find why the dialog is still opened. Any idea?
Thanks in advance.
解决方案
I got it.
The Firefox profile has to be passed as a parameter when creating the driver as follows:
FirefoxProfile fxProfile = new FirefoxProfile();
fxProfile.setPreference("browser.download.folderList", 2);
fxProfile.setPreference("browser.download.manager.showWhenStarting", false);
fxProfile.setPreference("browser.download.dir","c:\\tmp");
fxProfile.setPreference("browser.helperApps.alwaysAsk.force", false);
fxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream");
setDriver(TestBench.createDriver(new FirefoxDriver(fxProfile)));
I wass creating the driver without parameters. Now it is working.
这篇关于使用硒文件下载的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文