一、弹窗分类
(1)JS 弹框
点确认:alert.accept()
点取消 :alert.dismiss()
获取文本内容:text = alert.text
给弹框赋值: alert.send_keys(“Emily”)
(2)模态框:通过元素定位来操作,(先触发模态框,再定位到模态框中的元素、操作元素)
二、代码实现
from selenium.webdriver.common.alert import Alert
from selenium import webdriver
import logging
import time
logging.basicConfig(level=logging.DEBUG)
# 启动浏览器驱动服务器
driver = webdriver.Chrome()
# driver.get("https://www.w3school.com.cn/tiy/t.asp?f=eg_js_alert")
# driver.get("https://www.w3school.com.cn/tiy/t.asp?f=eg_js_confirm")
driver.get("https://www.w3school.com.cn/tiy/t.asp?f=eg_js_prompt")
driver.maximize_window()
time.sleep(2)
# 切换iframe
driver.switch_to.frame("iframeResult")
time.sleep(2)
driver.find_element_by_xpath('//button[text()="试一试"]').click()
time.sleep(2)
alert = Alert(driver) # 我是一个警告框!
# 获取文本内容
text = alert.text
print(text)
alert.send_keys("Emily")
time.sleep(5)
# 点确认
alert.accept()
# 点击取消
# alert.dismiss()