Geckodriver Selenium Авто Скачать PDF-файлы
Я пытаюсь автоматически загрузить.pdf файлы в geckodriver/Firefox. Я искал на stackru и других ресурсах и думаю, что приведенный ниже код должен работать:
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.manager.showWhenStarting", False)
profile.set_preference("browser.download.dir", 'C:\\Users\\xyz\\Downloads\\')
profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream,application/pdf,application/x-pdf,application/vnd.pdf")
profile.set_preference("pref.downloads.disable_button.edit_actions", True)
profile.set_preference("browser.helperApps.neverAsk.openFile", "application/octet-stream,application/pdf,application/x-pdf,application/vnd.pdf")
browser = webdriver.Firefox(firefox_profile=profile)
Я также попробовал:
profile.set_preference("pdfjs.disabled", True)
Тем не менее, Firefox не загружает автоматически.pdf автоматически (даже если это http: / application / pdf). Кроме того, после загрузки этого профиля в Firefox в разделе "Параметры / Приложения" в формате PDF по-прежнему отображается "Предварительный просмотр в Firefox" вместо "Сохранить файл"... Что я делаю не так?
2 ответа
Попробуйте также добавить следующее предпочтение в существующий список:
fp.setPreference("pdfjs.enabledCache.state", false);
fp.setPreference("browser.helperApps.neverAsk.openFile","application/pdf");
Чтобы отключить открыть и скачать PDF в Firefox:
FirefoxOptions options = new FirefoxOptions();
options.addPreference("browser.download.folderList", 2);
options.addPreference("browser.download.dir", pathToDownload);
options.addPreference("browser.helperApps.neverAsk.saveToDisk", "application/pdf");
options.addPreference("pdfjs.enabledCache.state",false);
WebDriver driver = new FirefoxDriver(options);