首页 > 编程语言 > 详细

python脚本之多窗口切换新解

时间:2019-02-17 13:11:27      阅读:266      评论:0      收藏:0      [点我收藏+]
#-*-coding:utf-8-*-
from selenium import webdriver
import time
x = webdriver.Chrome()
x.maximize_window()
x.get("http://www.hao123.com")
x.find_element_by_link_text("人民网").click()
x.find_element_by_link_text("新华网").click()
x.find_element_by_link_text("中国日报").click()
x.find_element_by_link_text("光明网").click()
handles = x.window_handles#获取所有窗口句柄
x.switch_to.window(handles[0])#切换到索引为0的窗口句柄,注意:hao123的句柄索引为0
print(x.title)
x.switch_to.window(handles[1])#切换到句柄索引为1的窗口,注意:最后打开的窗口句柄索引为1,中间依次类推
print(x.title)
x.switch_to.window(handles[2])#切换到句柄索引为2的窗口
print(x.title)
x.switch_to.window(handles[3])#切换到句柄索引为3的窗口
print(x.title)
x.switch_to.window(handles[4])#切换到句柄索引为4的窗口
print(x.title)
x.close()#此处关闭了切换到的句柄索引为4的窗口
x.switch_to.window(handles[0])#切换到索引为0的窗口句柄
print(x.title)
x.switch_to.window(handles[3])#切换到句柄索引为3的窗口
print(x.title)
x.switch_to.window(handles[2])#切换到句柄索引为2的窗口
print(x.title)
x.switch_to.window(handles[1])#切换到句柄索引为1的窗口
print(x.title)
‘‘‘
关闭索引号为4的窗口页签,并未对下面打印0-3的页签产生影响
‘‘‘
x.close()#此处关闭的是切换到的句柄索引为1的窗口
x.switch_to.window(handles[0])#切换到索引为0的窗口句柄
print(x.title)
x.switch_to.window(handles[2])#切换到句柄索引为2的窗口
print(x.title)
x.switch_to.window(handles[3])#切换到句柄索引为1的窗口
print(x.title)
‘‘‘
注意:上面取的是handles中的索引,handles中的索引号有0-4,关闭
索引号为4的窗口页签,并未对后面打印0-3的页签产生影响,但是关闭了
索引号为1的窗口页签,存在handles中的每个页签对应的索引号并未发
生变化,并没有因为索引为1的页签关闭而将剩余的索引变化为0-3,而是
0,2,3,而这时候如果打印索引为1的页签标题会报错,我们想要重新将索
引号排序,就需要重新获取所有句柄.
‘‘‘
time.sleep(3)
handles2 = x.window_handles#重新获取句柄
x.switch_to.window(handles2[0])#切换到索引为0的窗口句柄
print(x.title)
x.switch_to.window(handles2[2])#切换到句柄索引为2的窗口
print(x.title)
x.switch_to.window(handles2[1])#切换到句柄索引为1的窗口
print(x.title)
print("运行完毕")
================
运行结果如下:
技术分享图片

 

 

python脚本之多窗口切换新解

原文:https://www.cnblogs.com/yaoze2018/p/10390727.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!