我是靠谱客的博主 安详睫毛,最近开发中收集的这篇文章主要介绍java如何关闭一个浏览器网页代码,selenium 网页自动化-在访问一个网页时弹出的浏览器窗口,我该如何处理?...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

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

64c1a9cf-b5ff-4bda-a53e-283e63197839.png!large

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

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

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

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

解决方案

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

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

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

具体解决步骤

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

(1) 安装pywin32

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

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

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

(2) 如何安装pyHook

下载对应版本的pyHook后,通过cmd进入到该pyHook的文件夹路径后,输入:

pip install pyHook1.5.1cp37cp37mwin_amd64.whl

(3) 如何安装PyUserInput

通过cmd,输入:

pip install PyUserInput

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

1 #导入PyKeyboard

2 from pykeyboard importPyKeyboard3

4 #实例化对象

5 k=PyKeyboard()6

7 #按下Enter键

8 k.press_key(k.return_key) #其中return_key就是Enter键

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

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

67867344-5ac7-49f5-ba05-1dbe337a5927.png!large

若还有其它解决方案,欢迎留言交流!

最后

以上就是安详睫毛为你收集整理的java如何关闭一个浏览器网页代码,selenium 网页自动化-在访问一个网页时弹出的浏览器窗口,我该如何处理?...的全部内容,希望文章能够帮你解决java如何关闭一个浏览器网页代码,selenium 网页自动化-在访问一个网页时弹出的浏览器窗口,我该如何处理?...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部