python+selenium基础篇,句柄操作(多个页面切换)

1、我们打开网页有时候会开出多个页面,导致我们常常定位不到我们需要的元素,这种情况就是句柄的因素,如下图所示:
python+selenium基础篇,句柄操作(多个页面切换)

 

 2、句柄切换代码如下:

from selenium import webdriver
from time import sleep

dr=webdriver.Firefox()
dr.get(r"https://home.firefoxchina.cn/")#打开火狐首页
sleep(2)
selen=dr.current_window_handle#获取当前页面(火狐首页)的句柄
ss=dr.find_element_by_css_selector('#site-my-list')
ss.find_element_by_link_text(u"百 度").click()
dr.switch_to_window(selen)#跳转到火狐首页
sleep(2)
dr.find_element_by_link_text("新 浪").click()
sleep(2)
handles=dr.window_handles#获取所有的句柄
for xx in handles:#遍历句柄
    dr.switch_to_window(xx)#切换到每次遍历的句柄
    if xx.title=="百度一下,你就知道":#判断句柄title是否是“百度一下,你就知道”
        break#跳出循环
dr.quit()

 

上一篇:C#链接excel


下一篇:Java中CAS详解