我们在 Selenium Java 中有 @FindBys 和 @FindAll,如何使用相同的代码在 Python 中查找定位器?
@FindBys( { @FindBy(className = "class1") @FindBy(className = "class2")} )
请有人指导我。
我们在 Selenium Java 中有 @FindBys 和 @FindAll,如何使用相同的代码在 Python 中查找定位器?
@FindBys( { @FindBy(className = "class1") @FindBy(className = "class2")} )
请有人指导我。
你有多种方式:
使用lambda和CLASS_NAME:
WebDriverWait(driver,20).until(lambda driver: driver.find_element(By.CLASS_NAME, "class1") or driver.find_element(By.CLASS_NAME, "class2"))
使用CSS_SELECTOR:
WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.CSS_SELECTOR, ".class1, .class2"))
注意:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
您可以在以下位置找到一些相关的详细讨论: