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

selenium弹窗之下载文件弹窗点击

  • 一、弹窗类型
  • 二、windows下载文件弹窗点击方法
    • pyuserinput模块
    • pyautogui模块

一、弹窗类型

一般说到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")')

selenium弹窗之windows下载文件弹窗点击方法_第1张图片

第三种:windows弹窗
selenium弹窗之windows下载文件弹窗点击方法_第2张图片
参见《selenium+python自动化–文件下载弹窗处理(PyKeyboard)
selenium+python自动化99–文件下载弹窗处理(PyKeyboard)》,链接: link.

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

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

pyuserinput模块

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

但是这个模块需要pyhook模块,但是这个模块pip无法下载,
selenium弹窗之windows下载文件弹窗点击方法_第3张图片

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

其中pyhook最新版本为2008年的
selenium弹窗之windows下载文件弹窗点击方法_第4张图片
pyuserinput也是2016年的了,
selenium弹窗之windows下载文件弹窗点击方法_第5张图片
长时间没有更新,怕有许多问题就没有继续安装了

pyautogui模块

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

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

import pyautogui

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

selenium弹窗之windows下载文件弹窗点击方法_第9张图片

你可能感兴趣的:(自动化,spider,鼠标键盘自动化,python,selenium,windows)