python+selenium 实现文件自动化下载
记录Firefox和chrome实现文件下载
Firefox下载设置如下:
#在firefox中设置相关的下载参数,当模拟点击时,webdriver会自动保存对应的文档 fp=webdriver.FirefoxProfile() #2表示自定义的文件夹,0表示保存到浏览器默认的文件夹 fp.set_preference('driver.download.folderList',0) #是否显示开始 fp.set_preference('driver.download.manager.showWhenStarting',False) #设置默认的保存文件夹 # fp.set_preference('driver.download.dir',os.getcwd()) #设置自动保存的文件类型 fp.set_preference('driver.helperApps.neverAsk.saveToDisk','application/vnd.ms-excel')
chrome下载设置如下:
#在chrome中设置相关的下载参数,当模拟点击时,webdriver会自动保存对应的文档 options=webdriver.ChromeOptions() #设置下载路劲 prefs={'profile.default_content_settings.popups':0,'download.default_directory':'C\\'} options.add_experimental_option('prefs',prefs) driver=webdriver.Chrome(chrome_options=options)
如果出现提示下载文件保留还是清除:
#在chrome中设置相关的下载参数,当模拟点击时,webdriver会自动保存对应的文档 options=webdriver.ChromeOptions() #设置下载路劲 path = get_path('cfg\Download') # prefs={'profile.default_content_settings.popups':0,'download.default_directory':path} # options.add_experimental_option('prefs',prefs) prefs = {'download.prompt_for_download': False, 'download.default_directory': path, } options.add_experimental_option("prefs", prefs) wd= webdriver.Chrome(chrome_options=options) wd.command_executor._commands["send_command"] = ("POST", '/session/$sessionId/chromium/send_command') params = {'cmd': 'Page.setDownloadBehavior', 'params': {'behavior': 'allow', 'downloadPath': path}} wd.execute("send_command", params)

浙公网安备 33010602011771号