Selenium 设置下载路径
Firefox设置下载路径(Firefox需要针对每种文件类型进行设置)
MIME类型:传送门https://www.w3school.com.cn/media/media_mimeref.asphttps://www.w3school.com.cn/media/media_mimeref.asp
本部分转载于:https://blog.csdn.net/samenmoer/article/details/90141143
browser.download.dir:指定下载路径
browser.download.folderList:设置成 2 表示使用自定义下载路径;设置成 0 表示下载到桌面;设置成 1 表示下载到默认路径
browser.download.manager.showWhenStarting:在开始下载时是否显示下载管理器
browser.helperApps.neverAsk.saveToDisk:对所给出文件类型不再弹出框进行询问
from selenium import webdriver
from time import sleep
profile = webdriver.FirefoxProfile()
profile.set_preference('browser.download.dir', 'your_dir')
profile.set_preference('browser.download.folderList', 2)
profile.set_preference('browser.download.manager.showWhenStarting', False)
profile.set_preference('browser.helperApps.neverAsk.saveToDisk', 'application/zip')
driver = webdriver.Firefox(firefox_profile=profile)
对于不知道文件类型的可以用抓包软件进行抓包,F12找到导致弹框的请求,查看该请求response的header,不出意外的话content-type应该就是你要的结果
Chrome 设置下载路径
本部分转自:https://blog.csdn.net/huilan_same/article/details/52789954
from selenium import webdriver
from time import sleep
options = webdriver.ChromeOptions()
prefs = {
'profile.default_content_settings.popups': 0,
'download.default_directory': 'your_dir'
}
options.add_experimental_option('prefs', prefs)
driver = webdriver.Chrome(executable_path='driver_path', chrome_options=options)
driver.get('http://sahitest.com/demo/saveAs.htm')
driver.find_element_by_xpath('//a[text()="testsaveas.zip"]').click()
sleep(10)
driver.quit()