You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Selenium WebDriver修改Firefox的PDF下载默认设置

解决Firefox Selenium中PDF自动保存的问题

要实现PDF文件直接保存而非在Firefox中打开,仅设置application/pdf是不够的,需要配置一组完整的浏览器偏好:

  • 禁用Firefox内置的PDF阅读器,强制文件下载
  • 指定自动保存的MIME类型(包含PDF)
  • 配置下载目录(可选,若需指定路径)
  • 关闭下载弹窗提示

完整配置代码(基于FirefoxProfile)

from selenium import webdriver

# 初始化FirefoxProfile
fp = webdriver.FirefoxProfile()

# 禁用内置PDF阅读器
fp.set_preference("pdfjs.disabled", True)
# 禁用PDF插件的全屏预览
fp.set_preference("plugin.disable_full_page_plugin_for_types", "application/pdf")
# 指定自动保存的MIME类型,包含PDF
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/pdf,application/x-pdf")
# 设置下载目录(0=桌面,1=默认下载目录,2=自定义路径)
fp.set_preference("browser.download.folderList", 2)
# 自定义下载路径(替换为你的目标路径)
fp.set_preference("browser.download.dir", "/path/to/your/download/folder")
# 关闭下载管理器弹窗
fp.set_preference("browser.download.manager.showWhenStarting", False)

# 启动浏览器
driver = webdriver.Firefox(firefox_profile=fp)

新版本Selenium推荐方案(使用FirefoxOptions)

如果你的Selenium版本较新(v4+),FirefoxProfile已被标记为过时,推荐使用FirefoxOptions:

from selenium import webdriver
from selenium.webdriver.firefox.options import Options

options = Options()
# 禁用内置PDF阅读器
options.set_preference("pdfjs.disabled", True)
options.set_preference("plugin.disable_full_page_plugin_for_types", "application/pdf")
options.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/pdf,application/x-pdf")
options.set_preference("browser.download.folderList", 2)
options.set_preference("browser.download.dir", "/path/to/your/download/folder")
options.set_preference("browser.download.manager.showWhenStarting", False)

driver = webdriver.Firefox(options=options)

关键参数说明

  • pdfjs.disabled: 关闭Firefox自带的PDF.js阅读器,避免在浏览器内打开PDF
  • browser.helperApps.neverAsk.saveToDisk: 列出需要自动保存的文件MIME类型,确保包含application/pdf和application/x-pdf覆盖常见PDF类型
  • browser.download.folderList: 控制下载目录位置,设为2时需配合browser.download.dir指定自定义路径

内容的提问来源于stack exchange,提问作者John Code

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 19:49:57