Saltar al contenido

Python establece las preferencias de Firefox para Selenium – Ubicación de descarga

Solución:

Ok, creo que finalmente resolví este lío. En lugar de usar el código anterior, usé el siguiente código que apunto a mi carpeta de perfil de Firefox (si necesita actualizar la configuración de su perfil predeterminado, hágalo en Firefox antes de ejecutar este código):

from selenium.webdriver.firefox.options import Options
binary = FirefoxBinary(r'C:Program Files (x86)Mozilla FirefoxFirefox.exe')
fp = (r'C:UsersusernameAppDataRoamingMozillaFirefoxProfilesoqmqnsih.default')
opts = Options()
opts.profile = fp
firefox_capabilities = DesiredCapabilities.FIREFOX
firefox_capabilities['marionette'] = True
driver = webdriver.Firefox(capabilities=firefox_capabilities,firefox_binary=binary, firefox_options = opts)

Ejecuté este código junto con mi código de raspado web y una vez que hice clic en el enlace “Exportar CSV”, se descargó automáticamente en lugar de la ventana del Administrador de descargas. Siéntase libre de agregar cualquier comentario.

El código inicial es parcialmente correcto. Debe establecer el valor browser.download.folderList como 2:

fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList", 2) # 0 means to download to the desktop, 1 means to download to the default "Downloads" directory, 2 means to use the directory 
fp.set_preference("browser.helperApps.alwaysAsk.force", False)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.download.dir", "H:Downloads") 

binary = FirefoxBinary(r'C:Program Files (x86)Mozilla FirefoxFirefox.exe')

firefox_capabilities = DesiredCapabilities.FIREFOX
firefox_capabilities['marionette'] = True

driver = webdriver.Firefox(capabilities=firefox_capabilities,firefox_binary=binary, firefox_profile = fp)
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *