这篇文章主要介绍python中等待表示的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
Python里有三种等待的方式:
一、 强制等待
Sleep(54)
这个方法在time模块,使用时通过from time import sleep导入
比如:
Sleep(10) #表示强行等待10s再执行下一句代码
Driver.find_element_by_xpath(“xxxxxx”)
这种等待方式时间到了就执行下个语句,但比较死板,不能保证在等待的时间内元素真正被加载了出来。
二、 隐性等待
Implicitly_wait(xxx)
这个等待表示在规定的时间内页面的所有元素都加载完了就执行下一步,否则一直等到时间截止,然后再继续下一步。
Driver=webdriver.Chrome()
Driver.implicitly_wait(10)#等待10s
Driver.get(“XXX”)
这个方法的缺点是你需要的元素已经加载出来了,但页面还没有加载完,再需要继续等待页面加载完才能执行下一步操作。
看看第三种方法,比较灵活
三、 显性等待
WebDriverWait,配合该类的until()和until_not()方法,表示程序每隔x秒去判断一下指定的元素是否加载完,加载完了就执行下一步,
否则继续每隔x秒去判断,指定时间截止。如果超时就会抛出异常。
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 locator=(By.XPATH,”xxxxxxx”) d = webdriver.Chorme() d.get(“http://www.sina.com”) WebDriverWait(d,10,1).unitl(EC.presence_of_element_located(locator)) Print(“”XXX“”)
这里表示等待10s,每隔1s去检查一次元素是否出现,出现了就执行下一步,直到10s结束后还没有出现就会抛出异常。
以上是python中等待表示的方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。