selenium+python自动化79-文件下载(SendKeys)【转载】
2024-09-28 16:14:54
前言
文件下载时候会弹出一个下载选项框,这个弹框是定位不到的,有些元素注定定位不到也没关系,就当没有鼠标,我们可以通过键盘的快捷键完成操作。
SendKeys库是专业的处理键盘事件的,所以这里需要用SendKeys解决
一、下载场景
1.当点到下载按钮时候,会弹出如下页面
2.如果想点“保存文件”按钮,解决问题思路:
- 先按TAB键,移动光标聚焦到保存按钮上
- 再按下ENTER键,这样就能保存了
二、代码实现
# coding:utf-8
from selenium import webdriver
import SendKeys
import time
driver = webdriver.Firefox()
driver.get("https://www.autoitscript.com/files/autoit3/autoit-v3-setup.exe")
time.sleep(3)
# 默认在取消按钮上,先切换到保存文件上
SendKeys.SendKeys("{TAB}") # 发送TAB键
time.sleep(3)
# 火狐上第一次回车没生效,所以多发一次回车
SendKeys.SendKeys("{ENTER}") # 发送回车键
SendKeys.SendKeys("{ENTER}") # 发送回车键
最新文章
- Failed to execute goal org.codehaus.cargo:cargo-maven2-plugin:1.2.3:run (default-cli) on project Maven_WebTest: Execution default-cli of goal org.codehaus.cargo:cargo-maven2-plugin:1.2.3:run failed: C
- java”伪“批量上传
- iOS适配HTTPS,创建一个自签名的SSL证书(x509)具体步骤
- 黑马程序员——JAVA基础之程序控制流结构之循环结构,循环嵌套
- jQuery两句话实现HTML转义与反转义
- C++程序设计教程学习(0)-引子
- poj 3130 How I Mathematician Wonder What You Are!
- c#类初始化器
- SQL Server -SET ANSI_NULLS
- iOS 开发人员不可缺少的75个工具
- 在单机Docker上安装 Traefik 反向代理-负载均衡器
- spring学习(四) ———— 整合web项目(SSH)
- 急速JavaScript全栈教程
- [软件逆向]实战Mac系统下的软件分析+Mac QQ和微信的防撤回
- 数列分块入门九题(三):LOJ6283~6285
- Python-习题-11
- JDK8集合类源码解析 - HashMap
- PHP5.6 和PHP7.0区别
- .NET Core 2.1路线图
- # 课下测试ch02
热门文章
- Python如何进行中文注释
- Python中运算符";==";和";is";的差别分析
- VS2010历史记录清理
- Centos7安装GUI桌面
- SQL Server 监测语句
- 关于全球唯一标识符GUID
- mplab c30 注册方法
- 2017 Multi-University Training Contest - Team 3 Kanade's trio(字典树+组合数学)
- SPOJ DQUERY (主席树求区间不同数个数)
- [Leetcode] The minimum depth of binary tree二叉树的最小深度