selenium python瀏覽器多窗口處理代碼示例
本文主要研究的是selenium python瀏覽器多窗口處理的相關(guān)內(nèi)容,分享了操作實(shí)例代碼,具體如下:
#!/usr/bin/python # -*- coding: utf-8 -*- __author__ = 'zuoanvip' #在測試過程中有時(shí)候會(huì)遇到出現(xiàn)多個(gè)瀏覽器窗口的情況,這時(shí)候我們可以通過窗口的句柄來操作不同窗口的元素 from selenium import webdriver import os import time driver =webdriver.Firefox() driver.get('http://www.baidu.com') #獲得當(dāng)前窗口的句柄 nowwhandle = driver.current_window_handle #打開注冊新窗口 driver.find_element_by_name('tg_reg').click() #獲取所有窗口的句柄 allhandles = driver.window_handles #循環(huán)判斷窗口是否為當(dāng)前窗口 for handle in allhandles: if handle != nowwhandle: driver.switch_to_window(handle) print 'Now register window!' #切換到郵箱注冊標(biāo)簽 driver.find_element_by_id('mailRegTab').click() time.sleep(5) driver.close() #返回原先到的窗口 driver.switch_to_window(nowwhandle) driver.find_element_by_id('kw').send_keys(u'注冊成功') driver.quit()
執(zhí)行過程為:首先通過nowhandle獲得當(dāng)前窗口的句柄,隨后打開注冊窗口;通過allhandles獲得所有窗口的句柄;對句柄進(jìn)行循環(huán)遍歷;判斷窗口是否為nowhandle,如果不是則獲得當(dāng)前窗口的句柄,對當(dāng)前頁面 的元素進(jìn)行操作,最后返回nowhandle
總結(jié)
以上就是本文關(guān)于selenium python瀏覽器多窗口處理代碼示例的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
解決Jupyter Notebook開始菜單欄Anaconda下消失的問題
這篇文章主要介紹了解決Jupyter Notebook開始菜單欄Anaconda下消失的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04PyCharm 無法 import pandas 程序卡住的解決方式
這篇文章主要介紹了PyCharm 無法 import pandas 程序卡住的解決方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Python中獲取網(wǎng)頁狀態(tài)碼的兩個(gè)方法
這篇文章主要介紹了Python中獲取網(wǎng)頁狀態(tài)碼的兩個(gè)方法,分別使用urllib模塊和requests模塊實(shí)現(xiàn),需要的朋友可以參考下2014-11-11Python實(shí)現(xiàn)創(chuàng)建模塊的方法詳解
導(dǎo)入一個(gè)模塊,我們一般都會(huì)使用?import?關(guān)鍵字,但有些場景下?import?難以滿足我們的需要。所以除了?import?之外還有很多其它導(dǎo)入模塊的方式,下面就來介紹一下2022-07-07django 中使用DateTime常用的時(shí)間查詢方式
今天小編就為大家分享一篇django 中使用DateTime常用的時(shí)間查詢方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12Python并發(fā)編程多進(jìn)程,多線程及GIL全局解釋器鎖
這篇文章主要介紹了Python并發(fā)編程多進(jìn)程,多線程及GIL全局解釋器鎖,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07