python - web自動化測試 - 元素操作 - 窗口切換
阿新 • • 發佈:2019-01-19
port Coding and miss 元素 觸發 cep import 列表
# -*- coding:utf-8 -*- ‘‘‘ @project: web學習 @author: Jimmy @file: 元素操作-切換.py @ide: PyCharm Community Edition @time: 2019-01-19 10:43 @blog: https://www.cnblogs.com/gotesting/ ‘‘‘ ‘‘‘ windows窗口切換:切換到要操作的窗口 有多個窗口 1. 觸發新窗口的出現 2. 得知道新窗口是誰 -- 依據窗口的window_handle來識別窗口 3. 得到窗口的window_handle -- driver.window_handles(當前打開的所有窗口的句柄) A. 得到的是一個有序列表 B. 新窗口: -1 4. 切換:driver.switch_to.window(要切換的窗口的句柄)‘‘‘ from selenium import webdriver from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By import time driver = webdriver.Chrome() driver.get(‘http://www.baidu.com‘) driver.find_element_by_id(‘kw‘).send_keys(‘少年阿玉 博客園‘) driver.find_element_by_id(‘su‘).click() wins = driver.window_handles time.sleep(3) # 點擊到新窗口 driver.find_element_by_xpath("//*[@id=‘1‘]//h3//a").click() # 判斷新窗口是否已打開 WebDriverWait(driver,5,1).until(EC.new_window_is_opened(wins)) # 切換窗口 # 1. 獲取所有窗口 wins1 = driver.window_handles# 2. 切換到最新窗口 driver.switch_to.window(wins1[-1]) ‘‘‘ alert彈出框操作 (1)使用switch_to方法先切換到瀏覽器彈出框 driver.switch_to.alert (2)Alert類提供了一系列的操作方法 dismiss(): 否 accept(): 是 text(): 獲取彈出框裏的文本內容 Send_keys(): 在彈出框裏輸入文本 ‘‘‘ alert = WebDriverWait(driver,10,1).until(EC.alert_is_present()) alert.accept()
python - web自動化測試 - 元素操作 - 窗口切換