selenium+python自动化79-文件下载(SendKeys)

Posted jason89

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium+python自动化79-文件下载(SendKeys)相关的知识,希望对你有一定的参考价值。

前言

文件下载时候会弹出一个下载选项框,这个弹框是定位不到的,有些元素注定定位不到也没关系,就当没有鼠标,我们可以通过键盘的快捷键完成操作。

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}")   # 发送回车键

 

以上是关于selenium+python自动化79-文件下载(SendKeys)的主要内容,如果未能解决你的问题,请参考以下文章

Selenium python爬虫

Python+Selenium 自动化实现实例-实现文件下载

python+selenium+chrome网页自动化

selenium+python自动化77-autoit文件上传

selenium+python自动化77-autoit文件上传转载

Python selenium 文件自动下载 (自动下载器)