Selenium 等待所有 class 个元素

Selenium wait for all class elements

我正在尝试等待,驱动程序等待直到找到相同 class 的所有元素。

例如:

如果class是foo

我试试:

WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.CLASS_NAME, 'foo')))

我认为这只等待 class 中第一个出现的元素。任何人都知道我如何才能等到找到 class 的所有元素。

WebDriverWait inconjunction with the expected_conditions as presence_of_element_located() will wait for the very first matched .

等到所有元素相同class例如foo class 存在,而不是 presence_of_element_located() 你需要引入 for the presence_of_all_elements_located() 和你的有效代码块将是:

WebDriverWait(driver, 10).until(EC.presence_of_all_elements_located((By.CLASS_NAME, 'foo')))

注意:您必须添加以下导入:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC