Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >selenium+python自动化80-文件下载(不弹询问框)

selenium+python自动化80-文件下载(不弹询问框)

作者头像
上海-悠悠
发布于 2018-04-08 09:27:12
发布于 2018-04-08 09:27:12
2.1K00
代码可运行
举报
运行总次数:0
代码可运行

前言

上一篇是点弹出框上的按钮去保存文件,本篇介绍一种更加优雅的方法,加载Firefox和Chrome的配置文件,不弹出询问框后台下载。

一、FirefoxProfile

1.点下载的时候,如下图,如果不想让它弹出这个询问框,可以加载firefox的配置文件隐藏起来

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

3.FirefoxProfile的配置说明

-'browser.download.folderList':设置成0表示下载到桌面;设置成1表示下载到默认路径;设置成2则可以保存到指定目录;

- 'browser.download.dir' :“设置一个本地电脑路径:‘d:\\’ ”

- "browser.download.manager.showWhenStarting", False 是否显示下载进度框,下图所示(这个设置没生效)

- "browser.helperApps.neverAsk.saveToDisk", "application/octet-stream" 对所给出文件类型不再弹出框进行询问

二、文件类型

1.第四个参数文件类型这里一定要注意了,下载的不同文件类型,参数是不一样的,可以查阅:MIME 参考手册 http://www.w3school.com.cn/media/media_mimeref.asp

三、Firefox配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# coding:utf-8

from selenium import webdriver

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

# 设置成0表示下载到桌面;设置成1表示下载到默认路径;设置成2则可以保存到指定目录;
profile.set_preference('browser.download.folderList', 2)

# 指定下载文件到你想放的路径
profile.set_preference('browser.download.dir', 'd:\\')

# 开始下载时候显示是否显示进度框 (这个设置目前没生效)
profile.set_preference("browser.download.manager.showWhenStarting", False)

# 对所给出文件类型不再弹出框进行询问
profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream")

driver = webdriver.Firefox(firefox_profile=profile)
# 打开有道云笔记
driver.get("http://note.youdao.com/")
# 点立即下载按钮
driver.find_element_by_id("download-btn").click()

四、Chrome配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# coding:utf-8
from selenium import webdriver

profile = webdriver.ChromeOptions()

prefs = {'profile.default_content_settings.popups': 0,  # 设置为 0 禁止弹出窗口
         'download.default_directory': 'd:\\'}          # 指定下载路径

profile.add_experimental_option('prefs', prefs)

# executable_path这个是chromedriver的路径 如果设置过环境变量,此参数可以省略
chromedriver_path = "D:\\path\\chromedriver.exe"   # 自己本地电脑路径
driver = webdriver.Chrome(executable_path=chromedriver_path, chrome_options=profile)

# 打开有道云笔记
driver.get("http://note.youdao.com/")

# 点立即下载按钮
driver.find_element_by_id("download-btn").click()
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 从零开始学自动化测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
selenium下载文件
Firefox需要针对每种文件类型进行设置,这里需要我们查询对应文件的MIME类型,可以用以下链接进行查询:MIME 参考手册
周小董
2019/03/25
3.1K0
selenium.webdriver_python electron
http://blog.csdn.net/huilan_same/article/details/52789954
全栈程序员站长
2022/09/29
3500
《手把手教你》系列技巧篇(五十六)-java+ selenium自动化测试-下载文件-上篇(详细教程)
前边几篇文章讲解完如何上传文件,既然有上传,那么就可能会有下载文件。因此宏哥就接着讲解和分享一下:自动化测试下载文件。可能有的小伙伴或者童鞋们会觉得这不是很简单吗,还用你介绍和讲解啊,不说就是访问到下载页面,然后定位到要下载的文件的下载按钮后,点击按钮就可以了。其实不是这样的,且听宏哥徐徐道来:宏哥这里的下载是去掉下载弹框的下载。
北京-宏哥
2022/02/11
5130
《手把手教你》系列技巧篇(五十六)-java+ selenium自动化测试-下载文件-上篇(详细教程)
软件测试|selenium+python基础方法封装(一)
Web自动化是自动化测试中的重要部分,作为广大测试从业者的首选学习对象,相较于C/S架构的自动化来说,B/S有着其无法忽视的诸多优势,从行业发展趋、研发模式特点、测试工具支持,其整体的完整生态已经远远超过了C/S架构方面的测试价值。
霍格沃兹测试开发Muller老师
2023/01/10
4750
Selenium WebDriver API 学习笔记(三):浏览器控制
读了虫师《Selenium 2自动化测试实战 基于Python语言》一书,感触颇深,内容非常丰富。现整理下来,供后续学习参考使用。本次主要整理的是元素浏览器控制之二。内容在“Selenium WebDriver API 学习笔记(二):浏览器控制”基础上添加。
虫无涯
2023/01/17
8920
《selenium2 python 自动化测试实战》(14)——下载文件
这歌挺好听啊~~~ 说下载文件之前,我再和大家说一下用cookie登录的事,既然我们用cookie登录,那么传过去的cookie肯定是要和对应的网站完全一致的,注意,是包括大小写哦,本
孟船长
2018/05/18
1.5K0
利用selenium webdriver下载不同类型的文件(pdf,txt等等)[通俗易懂]
很多时候你需要从网站上下载不同种类的文件,像是MS Excel file, MS Word File, Zip file, PDF file, CSV file, Text file, 等等。 如果手动下载,会弹出一个保存文件的对话框。
全栈程序员站长
2022/11/04
1.7K0
利用selenium webdriver下载不同类型的文件(pdf,txt等等)[通俗易懂]
Selenium 系列篇(五):文件篇
WebDriver 仅仅提供了下载文件相关的 API,上传文件的 API 并没实现,需要我们自己去实现;而且上传文件需要同时兼容 Win 和Mac OSX 两套操作系统
AirPython
2020/09/22
1.1K0
Selenium 系列篇(五):文件篇
selenium2java基本方法二次封装
本人在使用selenium做测试的时候,封装了很多方法,由于工作原因估计很长时间不会更新方法库了,中间关于js的部分还差一些没有完善,其中设计接口的部分暂时就先不发了,以后有机会在更新。
FunTester
2019/09/10
2.1K0
selenium如何下载_python的selenium
在使用新的FirefoxProfile时,使用set_preference方法来配置配置文件,这样就可以单击Save和{},并且在下载过程中不会被中断。您可以按如下方式设置配置:profile = webdriver.FirefoxProfile()
全栈程序员站长
2022/11/04
1.7K0
web自动化测试入门篇04——selenium+python基础方法封装
web自动化测试作为软件自动化测试领域中绕不过去的一个“香饽饽”,通常都会作为广大测试从业者的首选学习对象,相较于C/S架构的自动化来说,B/S有着其无法忽视的诸多优势,从行业发展趋、研发模式特点、测试工具支持,其整体的完整生态已经远远超过了C/S架构方面的测试价值。接上一篇文章,我们将继续深入探讨在python中如何将Selenium的一些方法进行封装和二开,以便我们更高效的在自己的测试项目中灵活运用。
Austin_zhai
2022/12/21
7270
web自动化测试入门篇04——selenium+python基础方法封装
Selenium 窗口操作与上传下载
打开我要自学网Selenium课程主页,然后打开2-1课程详情页面,再回到课程主页打开3-1课程详情页面
清风穆云
2021/08/09
7030
通过Python3+selenium自动
使用的是selenium,最开始接触这个模块包是爬虫,这次是工作需要来自动测试网页。
py3study
2020/01/03
6110
《手把手教你》系列基础篇(九十六)-java+ selenium自动化测试-框架之设计篇-跨浏览器(详解教程)
从这一篇开始介绍和分享Java+Selenium+POM的简单自动化测试框架设计。第一个设计点,就是支持跨浏览器测试。
北京-宏哥
2022/05/10
8060
《手把手教你》系列基础篇(九十六)-java+ selenium自动化测试-框架之设计篇-跨浏览器(详解教程)
Selenium入门
查看chrom浏览器的版本,需要下载其对应版本的chrome webdriver.
测试加
2022/03/24
2.8K0
Selenium入门
Python爬虫源码,Behance 作品图片及内容 selenium 采集爬虫
前面有分享过requests采集Behance 作品信息的爬虫,这篇带来另一个版本供参考,使用的是无头浏览器 selenium 采集,主要的不同方式是使用 selenium 驱动浏览器获取到页面源码,后面获取信息的话与前篇一致。
二爷
2023/09/15
3820
Python爬虫源码,Behance 作品图片及内容 selenium 采集爬虫
Python + Selenium + Firefox 使用代理 auth 的用户名密码授权
米扑代理,全球领导的代理品牌,专注代理行业近十年,提供开放、私密、独享代理,并可免费试用
阳光岛主
2019/02/18
1.9K0
selenium Firefox 设置代理(认证)0
版权声明:如需转载本文章,请保留出处! https://blog.csdn.net/xc_zhou/article/details/90613970
周小董
2019/06/11
3.3K0
selenium保存静态网页
用到的工具有chromedriver,pywin32和selenium。chromedriver安装配置过程自行百度,需要注意的是chromedriver和chrome的版本号需要一一对应,否则会出现不必要的报错。
周小董
2019/03/25
3.3K0
selenium基础使用-2
options=None, service_args=None,
沈宥
2022/05/09
3760
推荐阅读
相关推荐
selenium下载文件
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验