Как отключить всплывающее окно загрузки файлов в Firefox с помощью селена и Python? - PullRequest
1 голос
/ 02 ноября 2019

Я пытаюсь загрузить некоторые отчеты с веб-страницы, используя селен и питон

, когда я нажимаю на ссылку для загрузки, Firefox показывает диалог сохранения / открытия

Я использовал конфигурацию профиля Firefox следующим образом

profile = webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.manager.showWhenStarting", False)
profile.set_preference("browser.download.panel.shown", False)
profile.set_preference("browser.helperApps.neverAsk.openFile", "application/pdf,attachment/pdf")
profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/pdf,attachment/pdf")
profile.set_preference("browser.download.dir", "c:\\firefox_downloads\\")

self.browser = webdriver.Firefox(profile)

но все равно отображается окно сообщения,

я изменился

self.browser = webdriver.Firefox(firefox_profile=profile)

как и выше, но без шансов>

Может ли кто-нибудь помочь мне решить эту проблему?

1 Ответ

1 голос
/ 02 ноября 2019

У меня есть небольшая вспомогательная функция, которая работает для меня.

Хотя она использует chromedriver.

def driver_download(location_for_download):
    # options = Options()
    # options.headless = True
    chrome_options = webdriver.ChromeOptions()
    prefs = {'download.default_directory': location_for_download}
    chrome_options.add_experimental_option('prefs', prefs)
    # driver = webdriver.Chrome(chrome_options=chrome_options)
    driver = webdriver.Chrome("/usr/lib/chromium-browser/chromedriver", chrome_options=chrome_options)
    return driver

Примечание: для моего конкретного приложения я не смог использовать безголовый. Но это должно работать, если это прямая ссылка на файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...