python+selenium基礎篇,句柄操作(多個頁面切換)


1、我們打開網頁有時候會開出多個頁面,導致我們常常定位不到我們需要的元素,這種情況可能就是句柄的因素,如下圖所示:

 

 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)#這個是老式寫法,運行會有警告
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()
 
        

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM