页面中的某些链接打开后,会重新打开一个窗口,想在新页面上进行操作,需要先切换窗口。用句柄表示窗口的唯一标识,所以只需要切换句柄,就能在多个页面上灵活操作了。
一、认识多窗口
打开赶集网:http://bj.ganji.com/,点击下图红框链接,就会发现右边多了一个窗口标签。
二、获取当前窗口句柄
1)元素有属性,浏览器的窗口也有属性,只是看不到而已,浏览器窗口的属性用句柄(handle)来识别。
2)人为操作的话,可以通过眼睛看,识别不同的窗口点击切换。但是脚本没长眼睛,它不知道你要操作哪个窗口,这时候只能通过句柄来判断了。
3)获取当前窗口的句柄:driver.current_window_handle。
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('https://bj.ganji.com/')
cur_handle = driver.current_window_handle
print(cur_handle)