美文网首页我爱编程
2018-02-27 设置等待时间(python+seleniu

2018-02-27 设置等待时间(python+seleniu

作者: 柠月如风000 | 来源:发表于2018-02-27 10:37 被阅读0次

1.强制等待

import time

time.sleep(2)         #2表示时长,单位为秒

2.隐性等待,implicitly_wait(xx)

driver.implicitly_wait(30) # 隐性等待,最长等30秒  

隐形等待是设置了一个最长等待时间,如果在规定时间内网页加载完成,则执行下一步,否则一直等到时间截止,然后执行下一步。

注意这里有一个弊端,那就是程序会一直等待整个页面加载完成,也就是一般情况下你看到浏览器标签栏那个小圈不再转,才会执行下一步,但有时候页面想要的元素早就在加载完成了,但是因为个别js之类的东西特别慢,我仍得等到页面全部完成才能执行下一步。

需要特别说明的是:隐性等待对整个driver的周期都起作用,所以只要设置一次即可。

3.显性等待,WebDriverWait,

它主要的意思就是:程序每隔xx秒看一眼,如果条件成立了,则执行下一步,否则继续等待,直到超过设置的最长时间,然后抛出TimeoutException。

from selenium import webdriver  

from selenium.webdriver.support.wait import WebDriverWait  

from selenium.webdriver.support import expected_conditions as EC  

from selenium.webdriver.common.by import By  

driver = webdriver.Firefox()  

driver.implicitly_wait(10) # 隐性等待和显性等待可以同时用,但要注意:等待的最长时间取两者之中的大者  

driver.get('https://huilansame.github.io')  

locator = (By.LINK_TEXT,'CSDN')  

try:  

WebDriverWait(driver,20, 0.5).until(EC.presence_of_element_located(locator))  

print driver.find_element_by_link_text('CSDN').get_attribute('href')  

finally:  

    driver.close()  

上例中,我们设置了隐性等待和显性等待,在其他操作中,隐性等待起决定性作用,在WebDriverWait..中显性等待起主要作用,但要注意的是:最长的等待时间取决于两者之间的大者,此例中为20,如果隐性等待时间 > 显性等待时间,则该句代码的最长等待时间等于隐性等待时间。

相关文章

  • 2018-02-27 设置等待时间(python+seleniu

    1.强制等待 import timetime.sleep(2) #2表示时长,单位为秒 2.隐性等待,imp...

  • iOS网络请求之NSMutableURLRequest

    NSMutableURLRequest是NSURLRequest的子类,常用方法有 //1、设置请求超时等待时间(...

  • appium—等待时间设置方法

    引言: 在做UI自动化的过程中,我们有时候为了等待元素的出现,需要加一些等待时间来帮助,但是有时候时间加的过多或者...

  • 6,JMeter集合点、定时并发

    定时器:JMeter使用定时器用于操作与操作之前设置等待时间,等待时间是性能测试中常用的控制客户端QPS的手段,类...

  • 常见爬虫方案

    设置等待时间 不会给对方服务器造成太大压力,也是比较经济有效的方案。 设置必要的浏览器Headers Refere...

  • 定时器

    定时器:设置一个定时器,再设置一个等待时间,到达指定时间,执行对应的操作。 window.setInterval(...

  • Selenium 实践(二)-设置等待时间

    在实践(一)中,登录过程中网页加载慢,出现了还没等图片完全加载出来就进行图片识别的现象,导致识别失败,如下图 那么...

  • 路由的配置需要等待

    并发 重复设置路由,且无等待时间,可能最终会导致路由丢失 ref: https://community.ui.co...

  • 三种等待——保证脚本稳定的重要手段

    显示等待(WebDriverWait().until())说明:显示等待是单独针对某个元素,设置一个等待时间如10...

  • 四、selenium常用功能

    1、其常用的功能包括:设置浏览器的参数、浏览器多窗口切换、设置等待时间、文件的上传与下载、cookies处理以及f...

网友评论

    本文标题:2018-02-27 设置等待时间(python+seleniu

    本文链接:https://www.haomeiwen.com/subject/hxdpxftx.html