欢迎来到天天文库
浏览记录
ID:55632070
大小:30.50 KB
页数:6页
时间:2020-05-21
《Python 操作IE的弹出窗口.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Python操作IE的弹出窗口最近和朋友在群里讨论Selenium中,源码中Pyhon关闭IE的弹出窗口失效,后来小编给了个建议是先把焦点设置给一个隐藏的层,然后发送回车的方法去实现它。感觉颇为无奈,同时也发现在PAM30中也是没有实现处理弹出窗口的问题,为此今天在PAM30的基础上新增了下面几个方法:getmsgbox、getmsgboxtext、getmsgboxtitle、closemsgbox、clickmsgboxbutton等等。主要关键点在于getmsgbox方法的实现。defgetmsgb
2、ox(self,filter=None):"""Getthespecified Popup messagebox parameters: [filter] -Onlyreturnelementsthatmatchthisfilterinformat (title=MicrosoftInternetExplorer;text=Areyousuretoclosethewindow;index:=0)
3、 Thefiltervaluetomatch. RegularExpressions canbeusedbystartingthevalwithan! "title=!Google;text=!baidu" #(Addbyluchenzhi@March30,2010) returns: apopupmessageboxhwnd """
4、 MsgboxHwnd=0 MatchTime =0 MatchIndex=0 try: foriinrange(0,100): MsgboxHwnd=win32gui.FindWindowEx(0,MsgboxHwnd,"#32770",None) ifMsgboxHwnd==0: break ifwin32gui.Ge
5、tParent(MsgboxHwnd)==self._ie.Hwnd: iffilter: valText=None filters=filter.split(";") match=False forfinfilters[:]:
6、 atts=f.split("=") ifatts[0].lower()=="title": valText=win32gui.GetWindowText(MsgboxHwnd) ifatts[0].lower()=="text": FirstStaticHwnd=win32gui.F
7、indWindowEx(MsgboxHwnd,0,"Static",None) ifwin32gui.GetWindowText(FirstStaticHwnd): valText=win32gui.GetWindowText(FirstStaticHwnd) else:
8、 valText=win32gui.GetWindowText(win32gui.FindWindowEx(MsgboxHwnd,FirstStaticHwnd,"Static",None)) ifatts[0].lower()=="index": MatchIndex=int(atts[1])
此文档下载收益归作者所有