selenium+Python(文件下载)
2024-08-29 20:38:49
webdriver允许我们设置默认的文件下载路径,也就是说,文件会自动下载并保存到设置的目录中
下面以Firefox浏览器为例:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time #time。sleep()实现延时 profile = webdriver.FirefoxProfile()
profile.set_preference('browser.download.dir', 'd:\\')
profile.set_preference('browser.download.folderList', 2)
profile.set_preference('browser.download.manager.showWhenStarting', False)
profile.set_preference('browser.helperApps.neverAsk.saveToDisk', 'application/zip') browser = webdriver.Firefox(firefox_profile=profile) browser.get('http://www.yyyyyy.com') #跳转到下载页面
filelist=browser.find_elements_by_xpath('\\') #定位到文件列表中所有的文件
for file in filelist:
file.click() #点击保存文件
browser.download.dir
:指定下载路径
browser.download.folderList
:设置成 2
表示使用自定义下载路径;设置成 0
表示下载到桌面;设置成 1
表示下载到默认路径
browser.download.manager.showWhenStarting
:在开始下载时是否显示下载管理器,ture表示显示,Flase表示不显示
browser.download.dir:用于指定所下载文件的目录。os.getcwd()函数不需要传递参数,用于返回当前目录
browser.helperApps.neverAsk.saveToDisk
:对所给出文件类型不再弹出框进行询问
指定要下载页面的content-type值,“application/octet-stream”
这些参数的设置可以通过在Firefox浏览器输入地址:about:config进行设置
将所有设置信息在调用webdriver的Firefox()方法时作为参数传递给浏览器,Firefox浏览器在下载时就根据设置信息将文件下载到当前脚本的目录下
该例子只是针对Firefox,不懂的浏览器有不同的设置
最新文章
- [LeetCode] Isomorphic Strings 同构字符串
- View的弹性滑动
- Play Framework 完整实现一个APP(八)
- 【转】MySQL中varchar最大长度是多少?
- EasyUI Field
- Discovering the Computer Science Behind Postgres Indexes
- java类的定义以及参数传递
- MIPI D-PHY 简写收集
- LDAP-常用命令
- python import xxx 与 from xxx import xx 模块引入的区别
- JAVA代码实现嵌套层级列表,POI导出嵌套层级列表
- nodejs事件循环
- drupal 8 查看数据库用户名密码
- JavaScript递归中的作用域问题
- C# 定时器和队列结合,卖包子啦,Timer、 AutoResetEvent、 ManualResetEvent
- 【GitLab】gitlab上配置webhook后,点击测试报错:Requests to the local network are not allowed
- .NET 高性能WEB架构-比较容易改造方式 - .NET架构
- 玩转oracle学习第五天
- C#语法糖($)(?.)(??)
- JS实现一位数显示为两位