不是所有的弹出框都叫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)