Python 解决火狐浏览器不弹出下载框直接下载的问题


Posted in Python onMarch 09, 2020

用火狐浏览器下载文件,总是遇到这个弹窗问题,如下图:

Python 解决火狐浏览器不弹出下载框直接下载的问题

原因:

使用火狐浏览器,点击下载,弹出下载弹框,使用AutoITLibrary库,能够判断是否弹出了下载弹框,但因为不能定位到下载弹框,导致没有下载,所以需要在下载过程中,不弹出下载框,直接下载,然后再判断文件是否下载成功。

解决办法:

1、自己启动Firefox浏览器,操作一次下载的过程。然后查看浏览器的“更多”-》“选项”-》“应用程序”-》查看刚新增的文件类型,并修改为“保存文件“。

我的是 以“.GZ”结尾的,改为“保存文件“。

Python 解决火狐浏览器不弹出下载框直接下载的问题

2、查看下载文件的Content_Type类型,我下载的文件是binary/octet-stream

Python 解决火狐浏览器不弹出下载框直接下载的问题

Python 解决火狐浏览器不弹出下载框直接下载的问题

3、新建python文件,输入以下代码。

fp = webdriver.FirefoxProfile()

#定义浏览器设置的属性

fp.set_preference('browser.download.dir','C:\\Users\\Downloads') 

#保存到指定目录

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

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

fp.set_preference("browser.download.manager.showWhenStarting",False)

#不管是True还是False,都不显示开始,直接开始下载

fp.set_preference("browser.helperApps.neverAsk.saveToDisk","binary/octet-stream")
#不询问下载路径,讲文件直接下载。一定要设置正确的文件的Content_Type。

driver = webdriver.Firefox(firefox_profile=fp)

#给driver的赋予设置的属性

测试使用的环境是:win 7 64位 +python 3.5 +Firefox 60.0 +selenium 3.8.0

Python 解决火狐浏览器不弹出下载框直接下载的问题

Python 解决火狐浏览器不弹出下载框直接下载的问题

Python 解决火狐浏览器不弹出下载框直接下载的问题

Python 解决火狐浏览器不弹出下载框直接下载的问题

以上这篇Python 解决火狐浏览器不弹出下载框直接下载的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python端口扫描系统实现方法
Nov 19 Python
python正则表达式中的括号匹配问题
Dec 14 Python
Python contextlib模块使用示例
Feb 18 Python
Python实现快速多线程ping的方法
Jul 15 Python
对于Python中RawString的理解介绍
Jul 07 Python
python操作oracle的完整教程分享
Jan 30 Python
win7 x64系统中安装Scrapy的方法
Nov 18 Python
Python pip使用超时问题解决方案
Aug 03 Python
Python getattr()函数使用方法代码实例
Aug 10 Python
python接口自动化框架实战
Dec 23 Python
python编程简单几行代码实现视频转换Gif示例
Oct 05 Python
python中urllib包的网络请求教程
Apr 19 Python
Python实现井字棋小游戏
Mar 09 #Python
python爬虫开发之selenium模块详细使用方法与实例全解
Mar 09 #Python
python为QT程序添加图标的方法详解
Mar 09 #Python
python爬虫开发之PyQuery模块详细使用方法与实例全解
Mar 09 #Python
详解pandas中iloc, loc和ix的区别和联系
Mar 09 #Python
pandas中ix的使用详细讲解
Mar 09 #Python
Python unittest 自动识别并执行测试用例方式
Mar 09 #Python
You might like
php MessagePack介绍
2013/10/06 PHP
深入理解PHP中的global
2014/08/19 PHP
PHP基于自定义类随机生成姓名的方法示例
2017/08/05 PHP
PHP按符号截取字符串的指定部分的实现方法
2018/09/10 PHP
jquery图片放大镜功能的实例代码
2013/03/26 Javascript
通过javascript获取iframe里的值示例代码
2013/06/24 Javascript
javascript计算当月剩余天数(天数计算器)示例代码
2014/01/09 Javascript
javascript闭包传参和事件的循环绑定示例探讨
2014/04/17 Javascript
js实现仿爱微网两级导航菜单效果代码
2015/08/31 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
JS+CSS3模拟溢出滚动效果
2016/08/12 Javascript
详解AngularJS 路由 resolve用法
2017/04/24 Javascript
使用Vue实现图片上传的三种方式
2018/07/17 Javascript
详解Angular中实现自定义组件的双向绑定的两种方法
2018/11/23 Javascript
微信小程序开发实现的IP地址查询功能示例
2019/03/28 Javascript
小程序分享模块超级详解(推荐)
2019/04/10 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
2019/08/15 Javascript
Vue v-text指令简单使用方法示例
2019/09/19 Javascript
Vue使用CDN引用项目组件,减少项目体积的步骤
2020/10/30 Javascript
[47:53]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#2COL VS Spirit
2016/03/02 DOTA
基于wxpython实现的windows GUI程序实例
2015/05/30 Python
python实现的希尔排序算法实例
2015/07/01 Python
python中私有函数调用方法解密
2016/04/29 Python
python 排序算法总结及实例详解
2016/09/28 Python
python中urlparse模块介绍与使用示例
2017/11/19 Python
Python中的函数作用域
2018/05/07 Python
python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决
2019/04/29 Python
Python-Seaborn热图绘制的实现方法
2019/07/15 Python
django 邮件发送模块smtp使用详解
2019/07/22 Python
使用Pandas的Series方法绘制图像教程
2019/12/04 Python
Python和Anaconda和Pycharm安装教程图文详解
2020/02/04 Python
基于python实现操作redis及消息队列
2020/08/27 Python
Python实现随机爬山算法
2021/01/29 Python
北京鼎普科技股份有限公司软件测试面试题
2012/04/07 面试题
银行优秀员工推荐信
2015/03/24 职场文书
2016年春季趣味运动会开幕词
2016/03/04 职场文书