北京列举网 > 教育培训 > 电脑/网络 > 拉勾教育python3selenium设置元素等待的三种
北京
[切换城市]

拉勾教育python3selenium设置元素等待的三种

更新时间:2020-10-24 14:21:32 浏览次数:82次
区域: 北京 > 海淀 > 北太平庄
类别:软件工程师培训
地址:创业大街
为什么要设置元素等待?
当你的网络慢的时候,打开网页慢,网页都没完全打开,代码已经在执行了,但是没找到你定 位的元素,此时python会报错。拉勾IT课小编为大家分解:
当你的浏览器或电脑反应慢,网页没完全打开,代码已经在执行了,但是没找到你定 位的元素,此时python也会报错。
由于代码执行很快,而由于各方面的原因导致python代码报错,所以才要设置元素等待。是根据你的网速或电脑的情况而定来设置等待时间,没有一成不变的设置,这个需要注意。
1.sleep 强制等待
代码如下
from selenium import webdriver
from time import sleep
dr = webdriver.Chrome()
sleep(2)     #设置等待2秒钟
dr.get('http://www.***')

优点:代码简洁,不啰嗦。
缺点:假如你设置sleep等待时间太短,元素没加载出来,程序照样报错。倘若你设置sleep等待时间设置太长,元素可能已经加载出来了,但是由于你设置过长,程序会一直等待你设置的时间过完才执行,这样会影响代码整体的运行效率。

2.implicitly_wait() 隐性等待
代码如下:
from selenium import webdriver
from time import sleep
dr = webdriver.Chrome()
dr.implicitly_wait(20) #设置等待20秒钟
dr.get('http://www.***')
dr.find_element_by_id('kw').send_keys('shawn')
dr.find_element_by_id('su').click()

优点:
1.代码简洁。
2.在代码前部分加implicitly_wait() ,整个的程序运行过程中都会有效,都会等待元素
北京电脑/网络相关信息
办公软件培训
平谷-平谷城区
9月2日
4月23日
办公软件培训
平谷-平谷城区
4月19日
办公软件培训
平谷-平谷城区
4月11日
办公软件培训
平谷-平谷城区
4月9日
注册时间:2020年08月20日
UID:706755
---------- 认证信息 ----------
手机已认证
查看用户主页