我正在编写我的第一个 selenium 和 python 测试,我尝试通过执行以下操作来单击按钮:
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get("https://portal.sandbox.mechanized.ai/")
driver.maximize_window()
driver.implicitly_wait(15)
email = driver.find_element(By.ID, 'email')
password = driver.find_element(By.ID, 'password')
loginBtn = driver.find_element(By.ID, 'login-button')
driver.implicitly_wait(60)
nextBtn = driver.find_element(By.ID, 'next-button')
email.send_keys("xxxxxx")
password.send_keys("xxxxx")
loginBtn.click()
nextBtn.click()
即使我等待,我也无法进行第二次点击
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"[id="next-button"]"}
在执行过程中,我似乎没有到达该屏幕,但它进行得太快,我无法确定。我缺少什么好的做法吗?我应该应用什么策略?
出现这种情况可能有多种原因。
Selenium 没有找到这样的元素 - 使用不同的定位器,例如 ID、NAME、CLASS、XPATH
超时问题 - 您可以在执行操作的两个按钮之间保持延迟,而不是在跟踪点中。