我尝试使用 selenium 和 python 从网页下载一些报告
当我点击下载链接时,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)
像上面一样,但没有机会>
谁能帮我解决这个问题吗?
最佳答案
我有一个适合我的小帮助函数。
它使用 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
注意:对于我的特定应用程序,我无法使用 headless 。但如果它是到文件的直接链接,它应该可以工作。
关于python - 如何使用 selenium 和 python 禁用 Firefox 中的文件下载弹出窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58669396/