//1.火狐文件下载 import os from selenium import webdriver from selenium.webdriver.common.by import By fp = webdriver.FirefoxOptions() fp.set_preference("browser.download.folderList", 0) fp.set_preference("browser.download.manager.showWhenStarting", False) fp.set_preference("browser.download.dir", os.getcwd()) fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream") #下载 driver = webdriver.Firefox(options=fp) driver.get("https://pypi.org/project/selenium/4.0.0.b2.post1/#files") driver.find_element(By.CSS_SELECTOR, "tbody > tr > th[scope=row] > a").click()
browser.download.folderList:设置成 2 表示使用自定义下载路径;设置成 0 表示下载到桌面;设置成 1 表示下载到默认路径
browser.download.dir:指定下载路径
browser.download.manager.showWhenStarting:在开始下载时是否显示下载管理器
browser.helperApps.neverAsk.saveToDisk:对所给出文件类型不再弹出框进行询问
指定要下载页面的 Content-type 值, “binary/octet-stream” 为文件的类型。下载的文件不同,这里的类型也会有所不一样。如果不清楚你下载的文件什么类型,请用Fiddler抓包。
//1.谷歌文件下载
import os from selenium import webdriver from selenium.webdriver.common.by import By options = webdriver.ChromeOptions() options.add_experimental_option("prefs", { "download.default_directory": os.getcwd(), 'profile.default_content_setting_values.automatic_downloads': 2, }) driver = webdriver.Chrome(options=options) driver.get("https://pypi.org/project/selenium/4.0.0.b2.post1/#files") driver.find_element(By.CSS_SELECTOR, "tbody > tr > th[scope=row] > a").click()