selenium python 如何得到彈出視窗

2022-09-03 01:42:10 字數 1486 閱讀 1107

捕獲或者說定位彈出視窗的關鍵在於獲得彈出視窗的控制代碼。我還是喜歡通過例子來說明:

#-*-coding=utf-8

from selenium importwebdriver

import unittest

class login(unittest.testcase):

def setup(self):

self.driver = webdriver.firefox()

self.driver.implicitly_wait(30)

self.base_url = ""

self.verificationerrors =

def test_loginpass(self):

driver = self.driver

driver.get(self.base_url)

nowhandle=driver.current_window_handle#在這裡得到當前視窗控制代碼

driver.find_element_by_id("kw").send_keys("selenium")

driver.find_element_by_id("su").click()

driver.find_element_by_xpath("//a[@title='selenium 安裝']").click()

aalhandles=driver.window_handles#獲取所有視窗控制代碼

for handle in aalhandles:#在所有視窗中查詢彈出視窗

if handle!=nowhandle:

driver.switch_to_window(handle)#這兩步是在彈出視窗中進行的操作,證明我們確實進入了

driver.find_element_by_link_text("新聞").click()

driver.switch_to_window(nowhandle)#返回到主視窗頁面

driver.find_element_by_id("kw").clear()#下面三步是返回到主視窗中進行的操作,證明我們確實返回了

driver.find_element_by_id("kw").send_keys("python")

driver.find_element_by_id("su").click()

def teardown(self):

#self.driver.quit()

self.assertequal(, self.verificationerrors)

if __name__ == "__main__":

unittest.main()

注釋:在python webdriver中

current_window_handle為得到當前視窗函式

window_handles獲取所有視窗函式

switch_to_window()進入指定的視窗函式

如切如磋,如琢如磨

有點難受的一天,以為幹了好多事情,晚上來機房補題,機房4個人,三個大佬乙個我。大佬們說的題和演算法我根本聽不懂,很挫敗。bgm my songs know what you did in the dark light em up string 我也不知道這首歌歌名為什麼沒有右括號 兩年了,我還是什麼...

selenium python環境搭建

安裝python 2.7.版本,其他版本目前支援不好 嘗試cmd下輸入python,若無法呼叫python,需要將python的安裝路徑 python.exe的儲存位置 新增到path系統變數中 3 安裝pycharm整合開發環境 晚上比較多資料,需要破解。4 配置pycharm 開啟pycharm...

selenium python 安裝使用

selenium官網 selenium簡單教程 selenium完整教程 python基礎教程 注意 上去中如果沒有勾選add python to 安執行命令列,會報 pip 不是內部或外部命令 需要手動進行環境配置即可 執行命令視窗 cmd 輸入以下命令安裝selenium pip install...