Selenium 显式等待
时间: 2023-09-13 11:07:27 浏览: 78
Selenium 显式等待是指在代码中设置一个条件,当这个条件满足时,Selenium 将继续执行代码。这种等待方式可以在代码中指定等待的时间和等待的条件。
使用显式等待的步骤如下:
1. 导入 WebDriverWait 类。
2. 创建 WebDriverWait 对象,并指定等待的最长时间和轮询的时间间隔。
3. 使用 until() 方法指定等待的条件。
示例代码:
```python
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
# 创建 WebDriver 对象
driver = webdriver.Chrome()
# 导航到目标页面
driver.get("https://www.example.com")
# 创建 WebDriverWait 对象,等待最长时间为 10 秒,每隔 0.5 秒检查一次条件
wait = WebDriverWait(driver, 10, 0.5)
# 等待元素出现
element = wait.until(EC.presence_of_element_located((By.ID, "myElement")))
# 对元素进行操作
element.click()
# 关闭浏览器
driver.quit()
```
在上面的示例中,我们使用了 `presence_of_element_located()` 方法作为等待条件,该方法表示等待页面上指定的元素出现。如果在等待时间内该元素没有出现,将会抛出 `TimeoutException` 异常。
阅读全文