导语:
本文主要介绍了关于Python页面加载的等待方式的相关知识,希望可以帮到处于编程学习途中的小伙伴
1、显式等待
它指定要搜索的节点,然后指定最长的等待时间。如果在指定时间内加载了节点,则返回搜索到的节点;如果在指定时间内没有加载节点,将抛出超时异常。
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
broswer = webdriver.Chrome()
broswer.get('https://www.jd.com/')
wait = WebDriverWait(broswer, 20)
input_q = wait.until(EC.presence_of_element_located((By.ID, 'key')))
button = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, '.button')))
print(input_q, button)
2、隐式等待
使用隐式等待执行测试时,如果Selenium没有在DOM中找到节点,就会继续等待。超过设置的时间后,会抛出找不到节点的异常。换句话说,当搜索到一个节点但该节点没有出现时,隐式等待会等待一段时间再搜索DOM。默认时间为0,示例如下:
from selenium import webdriver
browser = webdriver.Chrome()
browser.implicitly_wait(10)
browser.get('https://www.jd.com/')
input_q = browser.find_element_by_class_name('button')
print(input_q)
以上就是Python页面加载的等待方式,希望能对
大家有所帮助。
更多Python学习指路:
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python中多进程的写法12/30
- ♥ python K-NN算法优缺点12/06
- ♥ 如何在python中编写代码以跳转到下一行08/20
- ♥ python开发怎么把嵌套的for循环写成一行?11/25
- ♥ 在python中导入类的不同方法10/14
- ♥ 如何在python中输入阶乘10/14
内容反馈