我在初始化chrome驱动程序时提供了默认文件路径,但不是保存在默认位置,而是保存在“下载”文件夹中。我还更改了Chrome设置中的默认值,但仍将其保存在下载文件夹中。
ChromeOptions chrome = new ChromeOptions();
_chromeDriverService = ChromeDriverService.CreateDefaultService(_config.ReadConfig(VanityRedirect_Constants.ChromeFilePath));
_chromeDriverService.HideCommandPromptWindow = false;
chrome.AddArguments("--test-type");
chrome.AddArgument("--start-maximized");
chrome.AddArguments("--disable-extensions");
chrome.AddUserProfilePreference("download.prompt_for_download", true);
chrome.AddUserProfilePreference("download.directory_upgrade", true);
chrome.AddUserProfilePreference("download.default_directory", "Some Path");
chrome.AddUserProfilePreference("safebrowsing.enabled", false);
_driver = new ChromeDriver(_chromeDriverService, chrome, VanityRedirect_Constants.ChromeLoadTimeVanity);
可以帮我解决这个问题吗?
上面的代码在一台服务器上工作正常,但能够在另一台服务器上的特定路径上下载。 它正在打开一个Windows对话框,我正在其中提供路径。现在,它在一台服务器上按给定路径进行下载,但是一旦在另一台服务器上使用相同的代码,则仅按下载路径进行下载。 我猜这是一个新问题,无法找到解决方案。请帮帮我。 预先感谢。
答案 0 :(得分:0)
我在c Sharp中不知道确切的语法,但是在Java代码中就是这样
对于Chromedriver,请尝试:
String downloadFilePath = "/path/to/download";
HashMap<String, Object> chromePref = new HashMap<String, Object>();
chromePref.put("profile.default_content_settings.popups", 0);
chromePref.put("download.default_directory", downloadFilePath );
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("prefs", chromePref);
DesiredCapabilities des_cap = DesiredCapabilities.chrome();
des_cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
des_cap.setCapability(ChromeOptions.CAPABILITY, options);
WebDriver driver = new ChromeDriver(des_cap);