网站首页 全球最实用的IT互联网站!

人工智能P2P分享Wind搜索发布信息网站地图标签大全

当前位置:诺佳网 > 软件工程 > 其他技术区 > 软件测试 >

selenium之三种弹框(alert、confirm、prompt)

时间:2025-03-26 13:00

人气:

作者:admin

标签:

导读:弹框 WebDriver提供了一个API, 用于处理JavaScript提供的三种类型的原生弹窗消息. 这些弹窗由浏览器提供限定的样式.;分别为以下三种 alerts警告框 confirm确认框 prompt提示框 话不多说,开始...

弹框

WebDriver提供了一个API, 用于处理JavaScript提供的三种类型的原生弹窗消息. 这些弹窗由浏览器提供限定的样式.;分别为以下三种

  • alerts警告框
  • confirm确认框
  • prompt提示框

话不多说,开始实践下就知道怎么一回事了

alerts

警告框,显示一条自定义信息,以及一个关闭按钮【一般是确定】;可以使用按钮进行关闭

import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

serve_path = r'D:\Code_Study\driver\chromedriver-win64\chromedriver.exe'
service = Service(serve_path)
browser = webdriver.Chrome(service=service)
browser.get(f'https://www.selenium.dev/documentation/webdriver/interactions/alerts/')


# Alerts
# 等待元素可以被点击
alert_link = WebDriverWait(browser, 30).until(EC.element_to_be_clickable((By.LINK_TEXT, "See an example alert")))
alert_link.click()
# 切换到alert弹框并输出文本内容,点击确定
alert = browser.switch_to.alert
text = alert.text
print(text)
time.sleep(5)
alert.accept()

confirm

确认框类似于警告框,不同之处在于用户还可以取消消息

# 等待元素可以被点击
alert_link = WebDriverWait(browser, 30).until(EC.element_to_be_clickable((By.LINK_TEXT, "See a sample confirm")))
alert_link.click()
# 下面这句话也是点击click,只不过用的js代码执行的
# browser.execute_script("arguments[0].click();", alert_link)
# 切换到confirm弹框并输出,点击确定
alert = browser.switch_to.alert
text = alert.text
print(text)
time.sleep(5)
alert.dismiss() 

prompt

提示框和确认框相似,但是它可以进行文本输入;

点击取消不会提交文本内容,点击确定才可以

这里有个坑,不知道是不是我找的这个网站问题;没办法输入文本内容;等到后面找到原因了,会来填坑的

# prompt
alert_link = WebDriverWait(browser, 30).until(EC.element_to_be_clickable((By.PARTIAL_LINK_TEXT, "prompt")))
# alert_link.click()
# 下面这句话也是点击click,只不过用的js代码执行的
browser.execute_script("arguments[0].click();", alert_link)
# 切换到prompt弹框并输出,点击确定
alert = browser.switch_to.alert
text = alert.text
print(text)
time.sleep(10)
alert.send_keys('hahaha')
time.sleep(10)
alert.accept()
browser.quit()
温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信