博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
转 selenium 自动下载文件
阅读量:6947 次
发布时间:2019-06-27

本文共 1296 字,大约阅读时间需要 4 分钟。

#coding=utf-8

from selenium import webdriver

#实例化一个火狐配置文件
fp = webdriver.FirefoxProfile()

#设置各项参数,参数可以通过在浏览器地址栏中输入about:config查看。

#设置成0代表下载到浏览器默认下载路径;设置成2则可以保存到指定目录

fp.set_preference("browser.download.folderList",2)

#是否显示开始,(个人实验,不管设成True还是False,都不显示开始,直接下载)
fp.set_preference("browser.download.manager.showWhenStarting",False)

#下载到指定目录
fp.set_preference("browser.download.dir","c:\\test")

#不询问下载路径;后面的参数为要下载页面的Content-type的值
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","application/octet-stream")

#启动一个火狐浏览器进程,以刚才的浏览器参数
dr = webdriver.Firefox(firefox_profile=fp)

#打开下载页面
dr.get("")

#点击某个按钮
dr.find_element_by_xpath("//div[@id='download-button']/a").click()

#如果是某个直接下载链接,则缺少了点击某个链接或者按钮的操作,打开页面后执行下载动作

#备注:查看Content-type的方法,curl
#curl是采用url命令,在命令行下工作的文件传输开源工具
#首先,安装,到官网下载对应的版本,解压出来后是一个curl.exe文件。打开cmd,进入该目录下,则可以使用curl命令了。
#也可以将curl.exe的上层目录添加到path目录下去,则在任何地方都可以使用curl命令。
#如查看百度的Content-type ,进入cmd页面:C:\Users\Administrator>curl -I   
HTTP/1.1 200 OK
Date: Tue, 15 Apr 2014 10:08:24 GMT
Content-Type: text/html
Connection: Keep-Alive
Vary: Accept-Encoding
Set-Cookie: BAIDUID=5A06884F893AB430B9A251E59C27C50F:FG=1;
7 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.c
Set-Cookie: BDSVRTM=0; path=/
Set-Cookie: H_PS_PSSID=5552_4578_5231_1455_6052_5223_4760_6
; domain=.baidu.com

转载地址:http://sfenl.baihongyu.com/

你可能感兴趣的文章
App支付签名错误
查看>>
kali linux虚拟wifi搭建
查看>>
jquery设置元素的readonly和disabled
查看>>
监控文件是否被修改
查看>>
Linux学习笔记:Rsync
查看>>
转:APK Crack
查看>>
Beanstalkd协议 二(任务的生命周期)
查看>>
jvisualvm远程监控 visualgc插件 不受此jvm支持问题
查看>>
(1)Powershell简介
查看>>
zabbix客户端配置
查看>>
Logtail提升采集性能
查看>>
史上最失败的一次营销活动
查看>>
asp.net5发神经一例 ------无法加载依赖
查看>>
数据库水平切分的实现原理解析
查看>>
nova boot from volume在多主机zone下的坑
查看>>
uip中关于web服务器的简单例子
查看>>
Windows 10 ADK 1809 的变更 附下载地址
查看>>
修改win7和win8 preview双系统的开机默认启动项
查看>>
参考案例Shop-React-Native,后端Yii2
查看>>
关于PHP_CMS的一点感想
查看>>