自动化测试基础篇--Selenium中JS处理浏览器弹窗
浏览器弹窗:
现在大多数网站都会使用自定义弹窗,使用Selenium自带的方法暂时处理不了,这时就需要js来处理浏览器弹窗问题
大家能看到,图中的这种弹窗就是现在主流的表现形式,处理这种弹窗可以利用HTML DOM Style 对象,有一个display属性,可以设置元素如何被显示,详细解释可以参考http://www.w3school.com.cn/jsref/prop_style_display.asp。将display的值设置成none就可以去除这个弹窗了:
js = 'document.getElementById("doyoo_monitor").style.display="none";'
完整代码:
1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 # @File : div.py 4 # @Software: PyCharm 5 from selenium import webdriver 6 import time 7 8 driver = webdriver.Firefox() 9 driver.get("http://cd.tedu.cn/baidu-pp/dnpp1/?pz") 10 time.sleep(3) 11 js = 'document.getElementById("div_company_mini").style.display="none";' 12 driver.execute_script(js) 13 driver.quit()