import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.select import Select
from selenium.webdriver.support.wait import WebDriverWait
options = webdriver.ChromeOptions()
driver = webdriver.Chrome(options=options)
# 访问网址
driver.get('https://www.w3school.com.cn/tiy/t.asp?f=eg_js_prompt')
driver.maximize_window() # 浏览器最大化
driver.implicitly_wait(10) # 单位是秒
driver.switch_to.frame('iframeResult') # 切换iframe
driver.find_element(By.XPATH, '//button[text()="试一试"]').click()
# 上一步点击后页面上会出现js弹框
# 对于这种弹框我们一定要处理
# alert = driver.switch_to.alert
# 有的网站弹框出现的会慢一点,但时间不确定。直接切换可能会报错
# 所以我们可以使用显式等待来处理
wait = WebDriverWait(driver=driver, timeout=5)
alert = wait.until(expected_conditions.alert_is_present())
text = alert.text # 得到弹框上的文字
print(text)
alert.accept() # 确定、接受、同意、是
# alert.dismiss() # 取消、否、不同意
# alert.send_keys('沙陌') # 在有输入框的弹框上输入内容
time.sleep(5)
js弹窗处理
最新推荐文章于 2024-08-04 16:33:59 发布