如何使用Selenium和Firefox自动下载可执行文件



我正在使用Selenium Webdriver和C#在单击Firefox中的链接时自动自动下载可执行文件。理想情况下,我也想执行该文件,但现在,我想下载它并稍后执行它。这是我到目前为止所拥有的:

FirefoxProfile profile = new FirefoxProfile();
profile.AcceptUntrustedCertificates = true;
profile.SetPreference("browser.download.folderList", 2);
profile.SetPreference("browser.download.manager.showWhenStarting", false);
profile.SetPreference("browser.download.dir", "c:\Test");
profile.SetPreference("browser.helperApps.alwaysAsk.force", false);
profile.SetPreference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream");
IWebDriver driver = new FirefoxDriver(profile);

当我单击该链接时,它仍然显示"保存"对话框,但如果单击"保存",它确实会将其保存到我的"测试"文件夹中。我正在使用火狐 21。如何确保"保存"对话框不会出现并且下载会自动发生?

创建驱动程序时:

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.download.manager.alertOnEXEOpen", false);
profile.setPreference("browser.download.manager.closeWhenDone", true);
profile.setPreference("browser.download.manager.focusWhenStarting", false);
profile.setPreference("browser.download.manager.showWhenStarting",false);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk","application/x-msdownload");
FirefoxDriver driver = new FirefoxDriver(profile)

相关内容

最新更新