我正在尝试在 OS X 10.8 上使用带有 python 绑定的 selenium webdriver 下载 pdf。
我实际上需要pdf文件,而不仅仅是检查下载链接是否有效。据我了解,我需要设置 firefox 配置文件来下载 pdf 内容类型,而不是默认的“预览”。
我打开 Firefox 实例的代码是:
def Engage():
print "Start Up FIREFOX"
## Create a new instance of the Firefox driver
profile = webdriver.firefox.firefox_profile.FirefoxProfile()
profile.set_preference('browser.download.folderList', 2)
profile.set_preference('browser.download.dir', os.path.expanduser("~/Documents/PYTHON/Download_Files/tmp/"))
profile.set_preference('browser.helperApps.neverAsk.saveToDisk', ('application/pdf'))
driver = webdriver.Firefox(firefox_profile=profile)
return driver
我也尝试过最初将配置文件设置为:
profile = webdriver.FirefoxProfile()
## replacing :: profile = webdriver.firefox.firefox_profile.FirefoxProfile()
## the other attributes remained
这具有相同的结果
此配置文件在新窗口中以预览模式打开 pdf,而不是下载它。
我通过请求仔细检查了内容类型,并能够将其确认为“应用程序/pdf”:
import requests
print requests.head('mywebsite.com').headers['content-type']
知道我做错了什么吗?