Selenium + Python 如何取消Chrome下载文件
2021-11-24 本文已影响0人
Dayon
image
如上,使用selenium进行文件下载的时候,总是会提示是否要保留。“此类型的文件可能会损害您的计算机。您仍然要保留XXX吗?”,想要取消Chrome下载文件的这个提示,不进行提示直接保留文件进行下载,应该怎么做呢?
Chrome浏览器版本为:版本 83.0.4103.61(正式版本) (64 位)
在网上找了一两个小时,发现其解决办法差不多都是如下代码块的,就算有细微差异也大体类似,然后将他们都试了一遍,结果还是不行。但也知道大体思路就是这样的,只是不知道哪个地方不对劲。
options = webdriver.ChromeOptions()prefs = {'profile.default_content_settings.popups': 0, 'download.default_directory': 'd:\'}options.add_experimental_option('prefs', prefs) driver = webdriver.Chrome(executable_path='F:chromedriverchromedriver.exe', chrome_options=options)
直到我找到了这位博主的博客,根据他的分享才解决了这个问题,具体解决办法见如下代码,亲测的确有效。
该博主的文档链接如下:https://blog.csdn.net/weixin_41812940/article/details/82423892
options = webdriver.ChromeOptions() prefs = {'download.prompt_for_download': False, 'download.default_directory': r'C:\Users\Any\Downloads',} options.add_experimental_option("prefs", prefs) driver = webdriver.Chrome(chrome_options=options) driver.command_executor._commands["send_command"] = ("POST", '/session/$sessionId/chromium/send_command') params = {'cmd': 'Page.setDownloadBehavior', 'params': {'behavior': 'allow', 'downloadPath': r"C:\Users\Any\Downloads"}} driver.execute("send_command", params)
修改完了上述的设置以后,就可以继续你的其他操作了