美文网首页
selenium 三种等待方式

selenium 三种等待方式

作者: lvyz0207 | 来源:发表于2020-03-23 21:42 被阅读0次

selenium 的三种等待方式

### selenium 三种等待方式
import time
from selenium import webdriver
from selenium.webdriver.common.by import By

from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
# driver.implicitly_wait(10)   # 隐式等待,整个生命周期可用
driver.get("https://baidu.com")

## 强制等待
time.sleep(3)
print("强制等待3秒")

## 隐式等待

driver.implicitly_wait(20)

driver.find_element_by_id('kw').send_keys('python')

# driver.find_element_by_id('su').click()

try:
    element = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.ID, "su"))
    )
    element.click()
    print("显式等待!!")
finally:
    time.sleep(15)
    print("等15s在关闭浏览器!!")
    driver.quit()

上面的隐式等待包括:WebDriverWait 默认每 500 毫秒调用一次 ExpectedCondition 中的方法最多等待10s秒钟

wait_result = WebDriverWait(driver=self.driver, timeout=300, poll_frequency=0.5,  ignored_exceptions=None).until(
    EC.text_to_be_present_in_element((By.id, 'su'), u'百度'))

# 各个参数的含义:
# driver:浏览器驱动
# timeout:最长超时等待时间
# poll_frequency:检测的时间间隔,默认为500ms
# # ignore_exception:超时后抛出的异常信息,默认情况下抛 NoSuchElementException 异常
# 
# presence_of_element_located:判断某个元素是否被加到了dom树里,并不代表该元素一定可见
# text_to_be_present_in_element:判断某个元素中的text是否 包含 了预期的字符串
# visibility_of_element_located:判断某个元素是否可见. 可见代表元素非隐藏,并且元素的宽和高都不等于0


唯美手绘.jpeg

相关文章

  • python + Selenium合集

    python + Selenium 合集 selenium原理,点这里selenium 三种等待方式,点这里~ 五...

  • selenium三种等待方式

    selenium三种等待方式[https://www.cnblogs.com/ctltest/p/14480682...

  • selenium 三种等待方式

    selenium 的三种等待方式 上面的隐式等待包括:WebDriverWait 默认每 500 毫秒调用一次 E...

  • selenium三种等待方式

    随着对selenium不断的深入学习,在网上搜索的资料越多,才发现自己掌握的只是冰山一角。 1、强制等待 用法:t...

  • selenium三种等待方式

    作者:Gakki 前言 在浏览器加载一个页面时,页面内得元素可能是在不同的时间载入的,这会加大定位元素的困难程度,...

  • Selenium 三种等待元素出现的方式

    Selenium 等待元素出现的方式有以下三种1、显式等待通俗点说,就是死等,很死板不灵活的等待。即在指定的时间内...

  • Selenium的三种等待方式

    直接等待 time.sleep(1),强制等待线程休眠一定时间 使用上简单粗暴 以灵题库网站账号密码登录(http...

  • Python selenium 三种等待方式解读

    我们在使用selenium的时候,很多时候会出现定位不到的时候。在大多数情况下就是两种问题:1.有frame的问题...

  • selenium 延迟等待的三种方式

    1、最直接普通的方式:这个是设置固定的等待时间 Thread.sleep(1000); 2、隐式等待方式(impl...

  • python selenium 三种等待方式详解

    引言: 当你觉得你的定位没有问题,但是却直接报了元素不可见,那你就可以考虑是不是因为程序运行太快或者页面加载太慢造...

网友评论

      本文标题:selenium 三种等待方式

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