您当前的位置:首页 > 计算机 > 编程开发 > Python

python+selenium之元素等待的三种方式

时间:05-30来源:作者:点击数:

这个是python+selenium之元素等待的三种方式

'''
异常讲解
try:
	open("abc.txt",'r')
	print(aa)
except BaseException as msg:
	print(msg)
'''
#coding=utf-8
from selenium import webdriver
from time import ctime
driver = webdriver.Firefox()

#设置隐式等待为10s
driver.implicitly_wait(10)
driver.get('http://www.baidu.com')

try:
	print(ctime())
	driver.find_element_by_id("kw222").send_keys("selenium")
except Exception as e:
	print(e)
finally:
	print(ctime())
driver.quit()
#关闭浏览器

#coding=utf-8
#显式等待
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
#导入except_conditions类,并将它命名为EC

driver = webdriver.Firefox()
driver.get('http://www.baidu.com')

ele = WebDriverWait(driver,5,0.5).until(
				EC.presence_of_element_located((By.ID,'kw'))
				)
'''
WebDriveWait是由webdrive提供的等待方法,在设置时间内,
默认每个一段时间检测页面是否存在当前元素,
如果超时,则抛出异常
drive:浏览器驱动
5:最长超时时常
0.5:检测的间隔时间
WebDriveWait一般配合until和until_not方法配合使用
until:调用该方法提供的驱动程序作为一个参数,直到返回值为ture
until_not:调用该方法提供的驱动程序作为一个参数,直到返回值为false
本例中,persence_of_element_located是except_conditions的一个方法,
这个方法是判断元素是否被加在当前html里;
'''
ele.send_keys('selemium')
driver.quit()
#关闭浏览器
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门