selenium 网页自动化-在访问一个网页时弹出的浏览器窗口,我该如何处理?

前言

相信大家在使用selenium做网页自动化时,会遇到如下这样的一个场景:

在你使用get访问某一个网址时,会在页面中弹出如上图所示的弹出框。

首先想到是利用Alert类来处理它。

然而,很不幸,Alert类处理的结果就是没有结果,并不能够将这个弹出框关闭掉。

无法用处理alert的方式来关闭该弹出框,不关闭又无法对页面进行其他操作,怎么办呢?

解决方案

用键盘的Enter键来关闭该弹出框。

由于send_keys方法只能是针对元素来发送selenium的key值,而当前案例无法定位到该弹出框。

所以使用 PyKeyboad 来实现用python操作键盘

具体解决步骤

步骤1:想要使用PyKeyboard,需要先安装:pywin32->pyHook->PyUserInput

(1)安装pywin32

安装国外源的pywin32,会经常遇到因为超时导致安装失败,因此建议用国内源来安装。

可通过cmd来安装国内源的pywin32,指令如下:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pywin32

其中:https://pypi.tuna.tsinghua.edu.cn/simple是清华大学的镜像文件地址。

也可选择其他国内源,例如:

阿里云:https://mirrors.aliyun.com/pypi/simple/

豆瓣:https://pypi.douban.com/simple/

(2) 如何安装pyHook

https://blog.csdn.net/dianmomanxue/article/details/95044676下载对应版本的pyHook后,通过cmd进入到该pyHook的文件夹路径后,输入:

pip install pyHook1.5.1cp37cp37mwin_amd64.whl

(3) 如何安装PyUserInput

通过cmd,输入:pip install PyUserInput

步骤2:py文件中导入PyKeyboard,并输入Enter键:

若需要按下其他键,可选中PyKeyboard后,按ctrl+b,查看 special_key_assignment函数下的属性的说明。

本文最开头截图完整的处理代码如下:

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助

相关推荐
时光不去11 小时前
java接口自动化之allure本地生成报告
运维·笔记·自动化
测试199817 小时前
Appium使用指南与自动化测试案例详解
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
云飞云共享云桌面21 小时前
三维设计办公资源如何共享集中和安全管控?
运维·服务器·数据库·安全·自动化·制造
JZC_xiaozhong1 天前
跨系统流程如何打通?选 BPM 平台认准这三点
大数据·运维·自动化·数据集成与应用集成·业务流程管理·流程设计可视化·流程监控
中科岩创1 天前
某地公园桥梁自动化监测服务项目
大数据·人工智能·物联网·自动化
深蓝电商API1 天前
“油猴”脚本变身爬虫:Tampermonkey辅助自动化与数据采集
爬虫·自动化·tampermonkey
3DVisionary1 天前
基于数字图像相关(DIC)技术的机械臂自动化焊接残余应力全场变形高精度测量
运维·自动化·数字图像相关·自动化焊接·焊接变形·全场测量·机械臂/机器人
Fcy6481 天前
Linux下的项目自动化构建-make\makefile详解
linux·运维·自动化·makefile·make
北京耐用通信1 天前
冶金车间“迷雾”重重?耐达讯自动化Profibus转光纤为HMI点亮“透视眼”!
人工智能·物联网·网络协议·网络安全·自动化
晓风伴月1 天前
AI: n8n工作流自动化
自动化·n8n