EC.presence_of_element_located((By.ID 可以等待class= 元素出现m
时间: 2024-02-12 20:03:05 浏览: 348
`EC.presence_of_element_located((By.ID, 'element_id'))` 只能等待 `id` 属性为 `element_id` 的元素出现,不能等待 `class` 属性的元素出现。
如果要等待 `class` 属性为 `element_class` 的元素出现,可以使用以下代码:
```
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
element_class = 'element_class'
wait_time = 10
element = WebDriverWait(driver, wait_time).until(EC.presence_of_element_located((By.CLASS_NAME, element_class)))
```
其中,`By.CLASS_NAME` 表示通过 `class` 属性来定位元素。`element_class` 是需要等待出现的元素的 `class` 属性值。`wait_time` 是最长等待时间,单位为秒。`WebDriverWait` 是等待的工具类,它会等待一段时间,直到条件满足或超时为止。`EC.presence_of_element_located()` 是一个 Selenium 的等待条件,它会在页面中找到元素后返回该元素对象,否则会等待一段时间直到元素出现或超时。
阅读全文