问题:
多个窗口时,该如何识别想操作的窗口,操作页面元素呢?
例如点击一个link属性的文字,跳出新窗口,如何定位新窗口以及操作
分析:
代码:
#coding:utf-8from selenium import webdriverimport timedriver=webdriver.Chrome()driver.get("http://bj.ganji.com/")time.sleep(3)#获取第一个窗口的句柄handle1=driver.current_window_handle#打印第一个句柄print(handle1)#打印第一个窗口的标题print(driver.title)#打印第一个句柄的数据类型print(type(handle1)) #点击小本创业driver.find_element_by_link_text(u"小本创业").click() #获取所有窗口句柄,用列表形式展示handles=list(driver.window_handles)print(handles)#打印所有窗口句柄print(type(handles)) #获取新窗口的句柄handle2=handles[1] #获取所有句柄,从0开始,第二个窗口句柄为1 #切换至新窗口driver.switch_to.window(handle2)time.sleep(2)#打印当前窗口的标题print(driver.title)#关闭当前的窗口driver.close()#返回至第一个窗口上driver.switch_to.window(handles[0])time.sleep(2)#打印当前窗口的标题print(driver.title)driver.quit()
时间: 2024-10-21 01:16:18