利用selenium webdriver下载不同类型的文件(pdf,txt等等)[通俗易懂]

利用selenium webdriver下载不同类型的文件(pdf,txt等等)[通俗易懂]很多时候你需要从网站上下载不同种类的文件,像是MSExcelfile,MSWordFile,Zipfile,PDFfile,CSVfile,Textfile,等等。如果手动下载,会弹出一个保存文件的对话框。现在,seleniumwebdriver还不能处理这样的对话框。不过,你可以用别的好的seleniumwebdriver的特点去很轻松的下载文件,而不用

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

很多时候你需要从网站上下载不同种类的文件,像是MS Excel file, MS Word File, Zip file, PDF file, CSV file, Text file, 等等。
如果手动下载,会弹出一个保存文件的对话框。
这里写图片描述
现在,selenium webdriver还不能处理这样的对话框。不过,你可以用别的好的selenium webdriver的特点去很轻松的下载文件,而不用处理这个对话框。在了解这些特点之前,我们先来看看文件的MIME类型。

什么是文件的MIME

MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型,是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。
用selenium webdriver时, 你必须提供文件的MIME类型。有很多工具可以检测到文件的MIME类型。可以搜索MIME checker来找到合适的工具。
以下是5中常见的文件的MIME类型:
1. Text File (.txt) – text/plain
2. PDF File (.pdf) – application/pdf
3. CSV File (.csv) – text/csv
4. MS Excel File (.xlsx) – application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
5. MS word File (.docx) – application/vnd.openxmlformats-officedocument.wordprocessingml.document
6. zip file(.zip) – application/zip

利用selenium webdriver下载不同类型的文件(pdf,txt等等)的代码实例

FirefoxProfile fprofile = new FirefoxProfile();
//Set Location to store files after downloading.
fprofile.setPreference("browser.download.dir", "D:\\WebDriverdownloads");
fprofile.setPreference("browser.download.folderList", 2);
//fprofile.setPreference("browser.download.useDownloadDir", true);
//fprofile.setPreference("browser.helperApps.alwaysAsk.force", false);
fprofile.setPreference("browser.download.manager.showWhenStarting", false);
fprofile.setPreference( "pdfjs.disabled", true );
fprofile.setPreference(
                "browser.helperApps.neverAsk.saveToDisk",
                "application/zip,text/plain,application/vnd.ms-excel,text/csv,text/comma-separated-values,application/octet-stream,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document");
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193473.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java字符串数组初始化和赋值[通俗易懂]

    java字符串数组初始化和赋值[通俗易懂]//一维数组String[]str=newString[5];//创建一个长度为5的String(字符串)型的一维数组String[]str=newString[]{“”,””,””,””,””};String[]str={“”,””,””,””,””};String数组初始化区别      首先应该明白java数组里面存的是对象的引用,所以必须初

    2022年7月18日
    18
  • django 验证码_django获取当前登录用户

    django 验证码_django获取当前登录用户验证和授权概述Django有一个内置的授权系统。他用来处理用户、分组、权限以及基于cookie的会话系统。Django的授权系统包括验证和授权两个部分。验证是验证这个用户是否是他声称的人(比如用户名

    2022年7月29日
    6
  • 深究–CSS中px、rem与em的区别

    深究–CSS中px、rem与em的区别前言:随着PC端的网页盛行,移动端作为重要的一部分,也是火热的发展,但是鉴于一些单位的使用,我们并不知道该怎样去使用,那么今天我们来看看常用的三种单位PX、rem与em。目录:一.PX1.概念:2.特点:二.rem一.PX1.概念:px像素(Pixel)。相对长度单位。像素px是相对于显示器屏幕分辨率而言的。PX:px是pixel的缩写,是像素单位也是为影像显示的基本单位,译自英文“pixel”,pix是英语单词picture的常用简写,加上英语单词“元素”element,就得到pixel,

    2022年6月18日
    29
  • js的onchange(js replace函数)

    jsonpropertychange函数当一个HTML元素的属性用js改变的时候,都能通过onpropertychange来捕获。例如一个<inputname=”text1″id=”text1″/>对象的value属性被页面的脚本修改的时候,onchange无法捕获到,而onpropertychange却能够捕获。也就是说:onpropertychange事…

    2022年4月17日
    146
  • 数据绑定中的一个问题”pages enableEventValidation=”true””[通俗易懂]

    数据绑定中的一个问题”pages enableEventValidation=”true””[通俗易懂]我们在用vs2005做数据绑定的时候运行出来的回发或回调参数无效。在配置中使用<pagesenableEventValidation=”true”/>或在页面中使用<%@PageEnableEventValidation=”true”%>启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据…

    2022年7月14日
    34
  • uuid生成唯一数字_java组件有哪些

    uuid生成唯一数字_java组件有哪些UUID含义是通用唯一识别码(UniversallyUniqueIdentifier),这是一个软件建构的标准,也是被开源软件基金会(OpenSoftwareFoundation,OSF)的组织在分布式计算环境(DistributedComputingEnvironment,DCE)领域的一部份。UUID的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需

    2022年9月22日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号