下载文件
WebDriver 允许我们设置默认的文件下载路径,也就是说文件会自动下载到我们设置的目录中,不同的浏览器设置方法不同
下面先以Firefox为例子,演示下载
import time
from selenium imoprt webdriver
profile = webdriver.FirefoxProfile()
profile.set_preference('browser.download.dir', 'E:\\123\\qaz\\')
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)
driver.get('http://haozip.2345.cc/')
driver.find_element_by_class_name('btn_dl').click()
sleep(3)
driver.quit()
指定下载路径,后面跟路径
browser.download.dir
2表示使用我们自定义的路径,1表示默认下载到桌面,2表示下载到默认路径
browser.download.folderList
表示在下载的售后显示下载管理器
browser.download.manager.showWhenStarting
对所给出文件类型不再弹出框进行询问
browser.helperApps.neverAsk.saveToDisk
下面我们再次使用Chrome浏览器的使用
from selenium import webdriver
from time import sleep
chrome_options = webdriver.ChromeOptions()
prefs = {'profile.default_content_settings.popups': 0, 'download.default_directory': 'd:\\'}
#chrome_options.add_experimental_option('prefs', prefs) #添加实验性质的设置参数
driver = webdriver.Chrome(options=chrome_options)
driver.get('http://haozip.2345.cc/')
driver.find_element_by_class_name('btn_dl').click()
sleep(3)
Chrome下载默认不会弹出提示框,这里只要修改他的下载位置就可以了,
设置为
0
禁止弹出窗口
profile.default_content_settings.popups
设置下载路径
download.default_directory
执行时可能会提示use options instead of chrome_options 代表方法已经过时了, 这时我们把chrome_options 替换成options=chrome_options 就额可以了