selenium弹窗之windows下载文件弹窗点击方法

一、弹窗类型

一般说到selenium中的弹窗包括以下三种类型:
类型一:窗口柄
在这里插入图片描述
这种窗口常说的就是窗口句柄,其实并不能算弹窗,应该属于窗口切换

类型二:web弹窗
使用如下命令导致的:

browser = webdriver.Firefox()

browser.implicitly_wait(0.1)
browser.get('https://www.bilibili.com/')
browser.execute_script('window.scrollTo(0,document.body.scrollHeight)')
browser.execute_script('alert("to botton")')

在这里插入图片描述

第三种:windows弹窗
在这里插入图片描述
参见《selenium+python自动化–文件下载弹窗处理(PyKeyboard)
selenium+python自动化99–文件下载弹窗处理(PyKeyboard)》,链接: link.

据这篇文章所述,这种弹窗并不是web界面的弹窗,我尝试过定位,确实不行,因为元素都找不到。因而这种弹窗我称之为windows弹窗,即不可以通过selenium的鼠标、键盘操作完成,用动作链也不行

二、windows下载文件弹窗点击方法

pyuserinput模块

大部分文章对于这种弹窗的点击方法使用的是PyUserInpu模块

但是这个模块需要pyhook模块,但是这个模块pip无法下载,
在这里插入图片描述

直接下载PyUserInput 也不行
在这里插入图片描述
有解决下载的文章《https://blog.csdn.net/zhusongziye/article/details/79241410》,链接: link.
具体怎么样没有尝试,一看就很麻烦

其中pyhook最新版本为2008年的
在这里插入图片描述
pyuserinput也是2016年的了,
在这里插入图片描述
长时间没有更新,怕有许多问题就没有继续安装了

pyautogui模块

在《python之鼠标、键盘模拟》,链接: link.
找到了这个pyautogui模块,最新版2020
在这里插入图片描述
近期更新的,一看比较靠谱,就用了这个模块
下载文件弹窗的点击方法
在这里插入图片描述
在这里插入图片描述

具体的点击位置需要慢慢调,我的弹窗解决方法
代码:

import pyautogui

pyautogui.moveTo(505,410)
pyautogui.click()
pyautogui.moveTo(765,465)
print('ok')

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章