selenium常用操作之弹出框操作


弹出框有两种:

1.页面弹出框

2.alert弹出框

1.页面弹出框的操作

  页面弹出框是一个HTML页面的元素,只不过是由用户在页面的操作触发弹出的,所以执行这一类型的弹窗都是:

1.执行触发操作之后,等待弹窗出现;

2.再定位弹出框的元素并操作

代码示例如下:

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


driver=webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.maximize_window()
#点击登录,执行触发弹出框的操作
driver.find_element_by_xpath('//div[@id="u"]/*[@name="tj_login"]').click()
#等待弹出框出现
WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.ID,"TANGRAM__PSP_10__footerULoginBtn")))
#再定位元素
driver.find_element_by_id("TANGRAM__PSP_10__footerULoginBtn").click()

2.Alert弹出框操作

针对浏览器的弹出框我们一般使用以下方式:

1.使用switch_to方法切换到浏览器弹出框:driver.switch_to.alert

2.ALert类提供了一系列操作方法:

  dismiss():否

  accept():是

  text:获取弹出框的内容

  send_keys():往弹出框输入文本

代码示例:

#1.等待弹出框出现
WebDriverWait(driver,10).until(EC.alert_is_present())
#2.从HTML页面切换到alert中
alert=driver.switch_to.alert
#3.获取alert文本
text=alert.text
#3.接受或取消弹窗
alert.accept()
#alert.dismiss()

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM