Python+selenium自动化脚本编辑过程中遇到的问题和小技巧
应该也不算是问题和技巧,算是实践中学习到的Python,记录下,也不定时更新
1.通过截取url判断
实例:
self.assertEqual(self.broswer.current_url[self.broswer.current_url.find('editor=')+7:],'564d406f76bf511e8d000004','没有筛选自己')
截取url中editor=后面的字符串到最后
2.第一次使用正则
实例:
elf.assertNotEqual(exResult,re.search('\d+',self.broswer.find_element_by_xpath('/html/body/div/div/ui-view/div/div[1]/ul/li/span[2]').text).group(),'搜索结果条数一样')
获取到的text是“当前222篇”,正则获取数字开始的数字
3.弹出框
实例:
self.broswer.get(exURL) sleep(2) alert = self.broswer.switch_to_alert() alert.accept()
由于当前界面是编辑界面,所以想回到之前的界面时会弹出alert。还可以用dismiss
4.切换窗口
实例:
now_handle = self.broswer.current_window_handle for handle in self.broswer.window_handles:#先切换到新打开的窗口,然后关掉 if handle !=now_handle: self.broswer.switch_to_window(handle) self.broswer.close() self.broswer.switch_to_window(now_handle)#切换回原来的窗口
点击超链接后在新窗口中打开了,要把新打开的窗口关闭再切换回原来的窗口
先获取当前的handle,再和handles对比,如果不是就先切换过去关掉
再切换回来
一开始是将切换回原来的handle放到else里,结果发现获取到的window_handles中第一个handle就是原来的handle
导致当窗口关闭之后,handle还是之前的handle没有切换过来