概述
1.强制等待:time.sleep()
最简单的等待方式,缺点:设置时间短了没用,长了又浪费时间
2.隐式等待:
隐式等待是全局的是针对所有元素,设置等待时间如10秒,如果10
秒内出现,则继续向下,否则抛异常。可以理解为在10秒以内,不
停刷新看元素是否加载出来
3.显示等待:
显示等待是单独针对某个元素,设置一个等待时间如5秒,每隔0.5
秒检查一次是否出现,如果在5秒之前任何时候出现,则继续向下,
超过5秒尚未出现则抛异常。
常用的显示等待条件:
title_is(泰透):判断当前页面的标题是否等于某个字符串,相等则条件成立,条件成立返回bool值Ture,如果在设置的等待时间内条件一直不成立,则超时报错。
title_contains(肯特思):判断当前页面的标题是否包含某个字符串,包含则条件成立,条件成立返回bool值Ture,如果在设置的等待时间内条件一直不成立,则超时报错。
presence_of_element_located(普软曾ci 楼K得te):判断某个元素是否出现,传参为元组,例(By.ID,“id值”),在设置的等待时间内元素出现则条件成立并返回元素对象,否则超时报错。
visibility_of_element_located(v则白勒dai):判断某个元素是否出现且该元素为非隐藏的且宽和高都不为0的元素,传参为元组,例(By.ID,“id值”),在设置的等待时间内元素出
现则条件成立并返回元素对象,否则超时报错。
presence_of_all_elements_located():判断多个元素是否出现,传参为元组,例(By.ID,“id值”),在设置的等待时间内元素出现则条件成立并返回元素对象列表,否则超时报错。
visibility_of_all_elements_located():判断多个元素是否出现且所有元素为非隐藏的且宽和高都不为0的元素,传参为元组,例(By.ID,“id值”),在设置的等待时间内元素出现则条件成立并返回元素对象列表,否则超时报错。
visibility_of_any_elements_located():判断多个元素是否出现且至少有一个元素为非隐藏的且宽和高都不为0的元素,传参为元组,例(By.ID,“id值”),在设置的等待时间内元素出现则条件成立并返回元素对象列表,否则超时报错。
text_to_be_present_in_element():判断某个元素上的文本是否包含某个字符串,包含则条件成立,条件成立返回bool值Ture,如果在设置的等待时间内条件一直不成立,则超时报错。
text_to_be_present_in_element_value():判断某个元素上的value属性值是否包含某个字符串,包含则条件成立,条件成立返回bool值Ture,如果在设置的等待时间内条件一直不成立,则超时报错。
frame_to_be_available_and_switch_to_it():判断某个框架是否可以切入,可以则直接切入。条件成立返回bool值Ture,如果在设置的等待时间内条件一直不成立,则超时报错。
该动态条件有两种传参方式:1、元组(By.TAGNAME,“iframe”) 2、与switch_to_.frame()一样
alert_is_present():判断网页上是否存在警告窗口,如果存在则返回该警告窗口对象,否则超时报错。
element_to_be_clickable():判断某个元素是否可以点击,传参为元组,例(By.ID,“id值”),在设置的等待时间内元素出现且可以点击则条件成立并返回元素对象,否则超时报错。
new_window_is_opened():判断是否有新网页打开,如果设置的时间内条件成立返回True,不成立超时报错
number_of_windows_to_be():判断当前打开的页面的数量是否等于某个数值,如果设置的时间内条件成立返回True,不成立超时报错
最后
以上就是暴躁荷花为你收集整理的selenium中强制等待,隐式等待,显示等待的区别的全部内容,希望文章能够帮你解决selenium中强制等待,隐式等待,显示等待的区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复