练习5-python+selenium浏览器中遇到弹出系统窗口,如何处理
作者:互联网
某些页面在做页面文件上传交互的时候,有的会调出window的系统窗口来导入某些文件,这个时候单纯的用python+selenium已经无法满足这个处理
这个时候可以应用别的库来支援,对于这个我也是第一次遇到,所以记录一下自己整一个体验的过程。
工具:为了更好的了解这个window的窗口控件,下载了查看空间的软件:WinSpy-1.0.3.7z
查看窗口的详细情况,便于定位到正确位置
主要的代码:
主要函数的用法:
win32gui.FindWindow 函数:该函数获得一个顶层窗口的句柄,这个函数不查找子窗口。在查找时不区分大小写。
handle=win32gui.FindWindow(class_name,window_title) : class_name:窗口的类,window_title:窗口的标题 。返回结果为当前窗口的句柄信息
win32gui.FindWindowEx函数:该函数获得一个窗口的句柄,这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始
win32gui.FindWindowEx(handle,child,class_name,window_title):
handle:要查找子窗口的父窗口句柄
child:子窗口句柄 ,如果参数为0,查找从顶层窗口的第一个子窗口开始
class_name:类名
window_title:窗口名称
win32gui.SendMessage(handle,Massage,wParam,lParam):
handle :接收信息的窗口句柄
Msg:要发送的消息,这些消息都是windows预先定义好的
wParam:消息的wParam参数
lParam:消息的lParam参数
WM_SETTEXT 消息:设置窗体的文本 ,wParam:未使用,lParam:变量名,窗体文本将被设置为该字符串。
win32api.SendMessage(Mhandle, win32con.WM_COMMAND, 1, confirmBTN_handle) :利用一个WM_COMMAND消息来点击确定按钮
标签:handle,浏览器,函数,python,句柄,selenium,window,win32gui,窗口 来源: https://www.cnblogs.com/yimihua-kai/p/12099208.html