我正在尝试在 python 中使用 Selenium 自动化 AngularJS 应用程序。我正在尝试使用 ng-modal 找到一个元素。我看过一些与Java相关的帖子,其中指定您可以使用以下语句
"//input[@ng-model='yourName']"
我正在尝试在 python 中做同样的事情
(By.XPATH, "//*/select[@ng-model='yourName']")
但我无法找到该元素。我错过了什么还是有其他方法可以做到这一点?
因为,这是一个 Angular 应用程序,并且 python-selenium 本身并不等待 Angular“稳定下来”(例如,protractor or pytractor), 你需要显式等待元素出现:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 10)
elm = wait.until(EC.presence_of_element_located((By.XPATH, "//select[@ng-model='yourName']")))
也可以看看:
- Selenium WebDriver 和通用等待或延迟
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)