一、强制等待
time.sleep(),硬性等待,可以放在任意地方,等待时间为设置的时长,本质是暂停代码运行,每需要用到一次,就要设置一次。
如:百度页面输入"博客园",等待浏览器加载页面,获取页面标题
二、隐性等待
implicitly_wait(),启动浏览器后只需要设置一次,只能用于等待元素出现,等待的最长时间为设置的时长,一旦等待的元素出现,即停止等待。
三、显性等待
webdriverwait(),每需要用到一次,就要启动一次。不仅用于元素等待,而且还用于其他的等待,等待的最长时长为设置的时长,一旦等待的结果出现,即停止等待。
常用的等待方式如下:
1、等待某个元素加载 wait.until(expected_conditions.presence_of_element_located(locator))
2、等待某个元素可见 wait.until(expected_conditions.visibility_of_element_located(locator))
3、等待元素可以被点击 wait.until(expected_conditons.element_to_be_clickable(locator))