selenium中的alert弹出框,图中网页代码找不到任何提示,能否解释解释??各位大神
alert 要看是不是浏览器的行为,如果是网页做的,那一定会有元素的,如果是浏览器行为,则可以试试以下方法,
在selenium中,处理alert弹窗通常有以下几个方法:
switch_to.alert:该方法可以切换到alert弹窗。
alert.accept():点击"确定"按钮。
alert.dismiss():点击"取消"按钮。
alert.text:获取弹窗中的文本信息。
下面是一个简单地示例,演示如何使用selenium处理alert弹窗:
from selenium import webdriver
from selenium.webdriver.common.alert import Alert
import time
# 创建浏览器驱动对象
driver = webdriver.Chrome()
# 打开网页
driver.get('http://www.baidu.com')
# 点击百度一下按钮,触发alert弹窗
btn = driver.find_element_by_xpath('//input[@type="submit" and @id="su"]')
btn.click()
# 切换到alert弹窗并获取文本信息
alert = Alert(driver)
text = alert.text
print('弹窗文本:', text)
# 休眠5秒钟,模拟输入并点击确定按钮
time.sleep(5)
alert.send_keys('selenium')
alert.accept()
# 关闭浏览器驱动
driver.quit()
在该示例中,我们首先使用selenium.webdriver.common.alert.Alert方法切换到alert弹窗,并且通过alert.text方法获取弹窗中的文本信息。接着使用alert.send_keys()方法输入文本,最后使用alert.accept()方法点击弹窗上的"确定"按钮。注意,在对弹窗进行操作之前需要休眠足够的时间,以等待弹窗出现。
怎么看不到alert,confirm,prompt,的关键词呢?
不知道你这个问题是否已经解决, 如果还没有解决的话:alert就是每次界面上的弹出框,只有关闭弹出框才能进行下一步操作,类似于下图。
没有对话框不能用send_keys 输入值,不然会报错
text 返回alert/confirm/prompt 中的文字信息
#分两步得到操作弹框的句柄
#accept 点击确认按钮,关闭弹窗
#dismiss 点击取消,关闭弹窗
switch_to.alert
accept()
dismiss()
#例如得到句柄关闭弹框
alert=driver.switch_to.alert
#在弹出框中输入信息
alert.send_keys("mxz")
#点击确定
alert.accept()