Как скачать файл.docx с помощью веб-драйвера Selenium на Java?

Может кто-нибудь дать мне знать, как загрузить файл Word с помощью селена (Java)? Мой код ниже не работает.

FirefoxProfile prof = new FirefoxProfile();
prof.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/word");

Когда я нажимаю "ссылку или значок загрузки" на странице, появляется всплывающее окно для сохранения файла загрузки (см. Изображение ниже), и мне нужно нажать на OK кнопка во всплывающем окне.

Пожалуйста, дайте мне знать, как сделать это с помощью Firefox.

Сохранить всплывающее окно

3 ответа

Решение

Вам нужно использовать класс ROBOT для запуска события ENTER. В Java, если вы хотите запустить любое событие, вы должны использовать класс Robot для набора текста с использованием программных или запускающих событий, таких как ENTER и ESCAPE.

// Create object of Robot class
Robot object=new Robot();

// Press Enter
object.keyPress(KeyEvent.VK_ENTER);

// Release Enter
object.keyRelease(KeyEvent.VK_ENTER);

и для информации относительно этого вы можете использовать эту ссылку

Попробуй это

import java.awt.Robot;

И использовать

Robot r = new Robot();
r.keyPress(KeyEvent.VK_ENTER);
r.keyRelease(KeyEvent.VK_ENTER);

Это будет нажать Enter программно.

Получил работу, используя следующую настройку:

FirefoxOptions options = new FirefoxOptions();
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.download.dir", "C:\\Windows\\temp");
profile.setPreference("browser.download.useDownloadDir", true);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/vnd.openxmlformats-officedocument.wordprocessingml.document");
options.setProfile(profile);
driver = new FirefoxDriver(options);

Более подробную информацию о настройках параметров можно найти здесь: http://toolsqa.com/selenium-webdriver/how-to-download-files-using-selenium/.

Другие вопросы по тегам