一、alert/confirm/prompt 弹出框 操作
alert/confirm/prompt 弹出框操作主要方法有:
text: 获取文本值
accept() : 点击 " 确认 “
dismiss() : 点击"取消"或者叉掉对话框
send_keys() : 输入文本值 --仅限于prompt , 在alert和confirm上没有输入框
1、alert 弹框
alert.text 获取窗口上的文本
alert.accept() 点确定按钮
示例代码如下:
# -*- coding:utf-8 -*-
# Author: Sky
# Email: 2780619724@qq.com
# Time: 2021/8/16 16:41
# Project: day01
# Module: study_02.py.py
# Environment: Python3.8.6 , Selenium3 环境 ( 3.141.0 版本)
# Environment: Chrome ( 92.0.4515.131, 正式版本) + chromedriver(92.0.4515.107版本)
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get("http://49.235.92.12:8200/users/login/")
driver.maximize_window()
# 点击 意见反馈 链接 ,用 id 定位元素
time.sleep(3)
driver.find_element_by_id('feedback').click()
# 要定位 iframe 里面的元素,需要先定位 iframe
# 定位 iframe,
time.sleep(3)
iframe = driver.find_element_by_id('feedback_iframe')
# 切换到 iframe 上
driver.switch_to.frame(iframe)
# 定位到反馈内容框
time.sleep(3)
driver.find_element_by_id('mesaage').send_keys('好好学习,天天向上。')
# 点击 Send 按钮
time.sleep(3)
driver.find_element_by_class_name('button').click()
# alert 操作相关
time.sleep(3)
alert = driver.switch_to.alert
print(alert.text) # 打印 alert 文本
alert.accept() # 点击确定按钮
time.sleep(3)
driver.quit()
2、confirm 弹窗
accept() : 点击"确认"
dismiss() :点击"取消"或者叉掉对话框
text: 获取弹窗上的文本
# -*- coding:utf-8 -*-
# Author: Sky
# Email: 2780619724@qq.com
# Time: 2021/8/16 16:41
# Project: day01
# Module: study_02.py.py
# Environment: Python3.8.6 , Selenium3 环境 ( 3.141.0 版本)
# Environment: Chrome ( 92.0.4515.131, 正式版本) + chromedriver(92.0.4515.107版本)
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get("http://49.235.92.12:8200/users/login/")
driver.maximize_window()
# 点击 意见反馈 链接 ,用 id 定位元素
time.sleep(3)
driver.find_element_by_id('feedback').click()
# 要定位 iframe 里面的元素,需要先定位 iframe
# 定位 iframe,
time.sleep(3)
iframe = driver.find_element_by_id('feedback_iframe')
# 切换到 iframe 上
driver.switch_to.frame(iframe)
# 定位到反馈内容框
time.sleep(3)
driver.find_element_by_id('mesaage').send_keys('好好学习,天天向上。')
# 点击 confirm测试 按钮
time.sleep(3)
driver.find_element_by_id('confirm').click()
# confirm 操作相关 ,多了一个取消按钮
time.sleep(3)
alert = driver.switch_to.alert
print(alert.text) # 打印 alert 文本
# alert.accept() # 点击确定按钮
alert.dismiss() # 点击取消按钮
time.sleep(3)
driver.quit()
3、prompt弹窗
accept() : 点击"确认"
dismiss() : 点击"取消"或者叉掉对话框
send_keys() : 往输入框发送文本
text : 获取弹窗上的文本
# -*- coding:utf-8 -*-
# Author: Sky
# Email: 2780619724@qq.com
# Time: 2021/8/16 16:41
# Project: day01
# Module: study_02.py.py
# Environment: Python3.8.6 , Selenium3 环境 ( 3.141.0 版本)
# Environment: Chrome ( 92.0.4515.131, 正式版本) + chromedriver(92.0.4515.107版本)
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get("http://49.235.92.12:8200/users/login/")
driver.maximize_window()
# 点击 意见反馈 链接 ,用 id 定位元素
time.sleep(3)
driver.find_element_by_id('feedback').click()
# 要定位 iframe 里面的元素,需要先定位 iframe
# 定位 iframe,
time.sleep(3)
iframe = driver.find_element_by_id('feedback_iframe')
# 切换到 iframe 上
driver.switch_to.frame(iframe)
# 定位到反馈内容框
time.sleep(3)
driver.find_element_by_id('mesaage').send_keys('好好学习,天天向上。')
# 点击 prompt 测试 按钮
time.sleep(3)
driver.find_element_by_id('prompt').click()
# prompt 操作相关
time.sleep(3)
prompt = driver.switch_to.alert
prompt.send_keys('hello world') # 在网页看不到发送内容,但是已经发送成功了。
print(prompt.text) # 打印 alert 文本
prompt.accept() # 点击确定按钮
# alert.dismiss() # 点击取消按钮,下一个页面出现null值
time.sleep(3)
driver.quit()