不是所有的弹出框都叫alert,在使用alert方法前,先要识别出到底是不是alert。先认清楚alert长什么样子,下次碰到了,就可以用对应方法解决。
alert\confirm\prompt弹出框操作主要方法有:
text:获取文本值
accept() :点击"确认"
dismiss() :点击"取消"或者叉掉对话框
send_keys() :输入文本值 --仅限于prompt,在alert和confirm上没有输入框
from selenium import webdriver
import time
driver = webdriver.Chrome()
#url的地址可以拷贝在浏览器中打开的地址
url ='file://C:/Users/Administrator/Desktop/tanchuang.html'
driver.get(url)
time.sleep(3)
'''alert'''
driver.find_element_by_id('alert').click()
time.sleep(3)
r = driver.switch_to_alert()
#打印警告信息
print(r.text)
#点击确认按钮
r.accept()
#r.didmiss() 相当于点X按钮,取消
time.sleep(5)
'''confirm'''
driver.find_element_by_id('confirm').click()
time.sleep(3)
s = driver.switch_to_alert()
#打印警告信息
print(s.text)
#点击确认按钮
s.accept()
#s.didmiss() 相当于点X按钮,取消
time.sleep(3)
'''prompt'''
driver.find_element_by_id('prompt').click()
time.sleep(3)
t = driver.switch_to_alert()
#打印警告信息
print(t.text)
#输入文本
t.send_keys('prompt is a good girl,but she ...')
#点击确认按钮
t.accept()
#t.didmiss() 相当于点X按钮,取消
time.sleep(3)