selenium设置文件下载路径

selenium设置文件下载路径的教程就不细说了,
网上百度一下都是的,在这里简单贴一下代码,

代码如下:

chrome_options = webdriver.ChromeOptions()

prefs = {'profile.default_content_settings.popups': 0, #防止保存弹窗
'download.default_directory':tmp_path,#设置默认下载路径
"profile.default_content_setting_values.automatic_downloads":1#允许多文件下载
}
chrome_options.add_experimental_option('prefs', prefs)

#修改windows.navigator.webdriver,防机器人识别机制,selenium自动登陆判别机制
chrome_options.add_experimental_option('excludeSwitches', ['enable-automation']) 
drive = webdriver.Chrome(chrome_options=chrome_options)

本人 博客写的都是实际工作中遇到问题的解决,相当于做个笔记,下次碰到容易翻找

这次的问题
当我不从页面的控件按钮点击下载文件时,drive.get(download_url) 直接get一个下载链接的url,上面的selenium文件下载设置就失效了,即会弹出对话框让我选择文件保存的路径,而且对话框初始路径还不是设置的默认路径,而是上次人工使用chrome下载东西选择的路径

解决方案
在登陆login 和 主程序main 直接增加一步无用的操作
在登陆完成后先从页面元素随便下载一个东西,不需要可以等下载完成了删除掉,
然后再去drive.get(download_url) 即可直接下载文件到提前设置好的默认路径

猜你喜欢

转载自blog.csdn.net/qq_35866846/article/details/106219650