您需要使Firefox自动保存此特定文件类型。
这可以通过设置browser.helperApps.neverAsk.saveToDisk首选项来实现:from selenium import webdriver
profile = webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.manager.showWhenStarting", False)
profile.set_preference("browser.download.dir", 'PATH TO DESKTOP')
profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/x-gzip")
driver = webdriver.Firefox(firefox_profile=profile)
driver.get("Name of web site I'm grabbing from")
driver.find_element_by_xpath("//a[contains(text(), 'DEV.tgz')]").click()
更多解释:browser.download.folderList告诉它不要使用默认的Downloads目录
browser.download.manager.showWhenStarting显示下载进度的轮次
browser.download.dir设置下载目录
browser.helperApps.neverAsk.saveToDisk告诉Firefox自动下载所选mime-types的文件
您可以在浏览器中的about:config查看所有这些首选项。这里还有一个非常详细的文档页面:About:config entries。
此外,我不使用xpath方法,而是使用^{}:driver.find_element_by_partial_link_text("DEV.tgz").click()
另见: