Профиль Firefox, установленный через селен, не отображается в браузере, запущенном
Я использую селен 3.7.0 и Firefox 57.0. Я не хочу, чтобы всплывающее окно запрашивало "сохранить" или "открыть" файл, когда мы нажимаем на загрузку из браузера. Файл представляет собой файл.html. Итак, я создаю профиль Firefox, как показано ниже:
def firefox():
import os
profile = webdriver.FirefoxProfile()
profile.set_preference('browser.download.folderList', 2)
profile.set_preference('browser.download.manager.showWhenStarting', False)
profile.set_preference('browser.download.dir', os.path.expanduser("~") + "/Downloads/")
profile.set_preference('browser.helperApps.neverAsk.saveToDisk', ('text/html'))
profile.set_preference('app.update.auto', False)
profile.set_preference('app.update.enabled', False)
profile.set_preference('app.update.silent', False)
profile.set_preference('xpinstall.signatures.required', False)
return webdriver.Firefox(profile)
Но когда браузер открывается и я перехожу к параметрам, я не вижу новых приложений. Это скриншот: Firefox-> параметры-> приложения
Как видите, новое приложение не добавляется, и когда я загружаю html-файл, всплывающее окно все равно появляется.Предполагается ли, что добавленные предпочтения HTML перечислены в приложениях?Если да, что я делаю не так?
Вместо создания нового профиля, если я использую существующий профиль, где HTML добавляется вручную, он работает нормально. Единственное отличие здесь от приведенного выше кода заключается в том, что я предоставляю путь к профилю по умолчанию, как показано ниже:
profile = webdriver.FirefoxProfile('PATH')
Но я хочу использовать новый профиль, так как это хорошая практика. Как я могу решить эту проблему?