在macOSX中Selenium的特定文件夹中下载文件



我正在尝试使用 selenium 从 Mac 系统中特定文件夹中的 web 下载任何文件(jar 文件(,但每次都在下载文件夹中下载

Chrome 版本 -76Chromdriver 76

OS -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);

每次在下载文件夹中下载时

您必须添加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+"'}");

我认为您不应该使用浏览器下载内容,请将其留给Chrome开发人员/测试人员。

我相信你应该获取你想要下载的元素的href属性,并使用OkHTTP库获取它

如果您的网站需要身份验证,您可以从浏览器实例中获取cookie并将其传递给OkHttp Request.Builder

相关内容

  • 没有找到相关文章

最新更新