How to download files at any particular location using java(browseroptions)

Required libraries:

import java.io.File;
import java.io.FileReader;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.chrome.ChromeDriver;

import org.openqa.selenium.chrome.ChromeOptions;

import org.openqa.selenium.edge.EdgeDriver;

import org.openqa.selenium.edge.EdgeOptions;

import org.openqa.selenium.ie.InternetExplorerDriver;

import org.openqa.selenium.io.FileHandler;

import org.openqa.selenium.support.events.EventFiringWebDriver;

For Chrome:

System.setProperty("webdriver.chrome.driver", filepath.concat("chromedriver" + fileExtension));

ChromeOptions option1 = new ChromeOptions();

Map<String, Object> pref = new HashMap<>();

pref.put("download.default_directory", "YOUR_DOWNLOAD_PATH");

pref.put("download.prompt_for_download", false);

pref.put("profile.default_content_settings.popups", 0);

option1.setExperimentalOption("prefs", pref);

 driver1 = new ChromeDriver();

 driver = new EventFiringWebDriver(driver1);

 eventListener = new WebEventListener();

 driver.register(eventListener);

driver.manage().window().maximize();

break;



 For Incognito:

System.setProperty("webdriver.chrome.driver", filepath.concat("chromedriver" + fileExtension));

ChromeOptions option2 = new ChromeOptions();

String downloadFilepath = "YOUR_DOWNLOAD_FILEPATH";

Map<String, Object> prefs1 = new HashMap<>();

prefs1.put("download.default_directory", downloadFilepath);

prefs1.put("download.prompt_for_download", false);

prefs1.put("profile.default_content_settings.popups", 0);

option2.addArguments("--incognito");

option2.setExperimentalOption("prefs", prefs1);

driver1 = new ChromeDriver(option2);

driver = new EventFiringWebDriver(driver1);

 eventListener = new WebEventListener();

driver.register(eventListener);

driver.manage().window().maximize();

break;

 

For EDGE:

System.setProperty("webdriver.edge.driver", filepath.concat("msedgedriver" + fileExtension));

String userDataDir = System.getenv("LOCALAPPDATA") + "\\Microsoft\\Edge\\User Data";

EdgeOptions edgeOptions = new EdgeOptions();

downloadFilepath = "YOUR_DOWNLOAD_FILEPATH";

Map<String, Object> prefs2 = new HashMap<>();

prefs2.put("download.default_directory", downloadFilepath);

prefs2.put("download.prompt_for_download", false);

edgeOptions.setCapability("prefs", prefs2);

driver1 = new EdgeDriver(edgeOptions);

driver = new EventFiringWebDriver(driver1);

driver.manage().window().maximize();

eventListener = new WebEventListener();

driver.register(eventListener);

break;

Comments

Popular Posts