浏览器弹窗,需登录(非alert、confrim、promat弹窗)
访问某个网址,遇到类似图上这种弹出框。
alert无法处理此类弹窗
解决方法:
用键盘事件来输入账号密码登录等操作。
由于send_keys方法只能是针对元素来发送selenium的key值,而当前案例无法定位到该弹出框。
所以使用 PyKeyboad 来实现用python操作键盘
1)安装pywin32
国外源安装pywin32可能失败 pip install 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://www.lfd.uci.edu/~gohlke/pythonlibs/下载对应版本的pyHook后,
通过cmd到该pyHook的文件夹路径后安装。
D:\Documents\ware\python\pyHook-1.5.1-cp37-cp37m-win_amd64.whl
pip install D:\Documents\ware\python\pyHook-1.5.1-cp37-cp37m-win_amd64.whl
3)安装PyUserInput
通过cmd,输入: pip install PyUserInput
py文件中导入PyKeyboard,并输入Enter键:
1、思路打开页面,用户密码写入剪切板(写入剪切板使用方法pyperclip,参考地址),打开页面光标会自动定位到用户名输入框,粘贴ctrl+v 换行tap 粘贴ctrl+v 登录enter。