美文网首页Python自学及心得
4.7)设置元素等待

4.7)设置元素等待

作者: Jeff_9021 | 来源:发表于2022-08-31 22:44 被阅读0次

    四、设置元素等待  

    # -*- coding:utf-8 -*-

    from selenium import webdriver

    from webdriver_manager.chrome import ChromeDriverManager

    from selenium.webdriver.common.by import By

    from selenium.webdriver.support.ui import WebDriverWait

    from selenium.webdriver.support import expected_conditionsas EC

    from time import ctime, sleep

    from selenium.common.exceptions import NoSuchElementException

    driver = webdriver.Chrome(ChromeDriverManager().install())

    driver.get("https://www.baidu.com/")

    # 显性等待

    # 方法一

    print(ctime())

    element = WebDriverWait(driver, 5, 0.5).until(

    EC.visibility_of_element_located((By.ID, 'kw'))

    )

    element.send_keys('selenium')

    print(ctime())

    driver.quit()

    # 方法二

    print(ctime())

    for iin range(5):

    try:

    ele = driver.find_element_by_id("kw22")

    if ele.is_displayed():

    break

        except:

    pass

        sleep(1)

    else:

    print("time out")

    print(ctime())

    driver.quit()

    # 隐式等待

    driver.implicitly_wait(10)# 等待所有需要等待的元素,直到等待10s后,仍找不到元素会报错,不执行下一步。

    try:

    print(ctime())

    driver.find_element_by_id('kw22').send_keys('selenium')

    except NoSuchElementExceptionas e:

    print(e)

    finally:

    print(ctime())

    driver.quit()

    相关文章

      网友评论

        本文标题:4.7)设置元素等待

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