我正在尝试使用硒从Web上的Mac System的“特定”文件夹中的Web下载任何文件(jar文件),但是每次都在“下载”文件夹中进行下载
Chrome版本-76
Chromdriver 76
操作系统-Mac
我尝试使用给定的代码,但仍然无法将文件保存在特定的文件夹中
ChromeOptions options = new ChromeOptions ();
HashMap<String, Object> chromePrefs = new HashMap<String, Object>();
chromePrefs.put("profile.default_content_settings.popups", 0);
chromePrefs.put("download.default_directory","/Users/username/Documents/WORKSPACE/ARU1/");
Options.setExperimentalOption("prefs", chromePrefs);
DesiredCapabilities cap = DesiredCapabilities.chrome();
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
cap.setCapability(ChromeOptions.CAPABILITY, options);
WebDriver driver = new ChromeDriver(cap);
每次下载都在下载文件夹中
答案 0 :(得分:0)
您必须添加setDownloadBehavior
。
例如:
HashMap chromePrefs = new HashMap();
chromePrefs.put("profile.default_content_settings.popups", 0);
chromePrefs.put("download.default_directory","/Users/username/Documents/WORKSPACE/ARU1/");
chromePrefs.put("browser.set_download_behavior","{ behavior: 'allow' , downloadPath: '"+_PATH_TO_DOWNLOAD_DIR+"'}");
答案 1 :(得分:0)
我认为您不应该使用浏览器来下载内容,而是将其留给Chrome开发人员/测试人员使用。
我相信您宁愿获得href attribute想要下载的元素并使用OkHTTP library
如果您的站点需要身份验证,则可以从浏览器实例中获取cookies并将其传递给OkHttp Request.Builder