Selenium Webdriver - Python 没有这样的元素: 无法定位元素 { "method" : "id" , "selector" : "email" }



我的python代码有问题。我一直得到python没有这样的元素:无法定位元素{"方法":"id","选择器":"电子邮件"}

我的代码:

self.driver.get(redirecturl)
email = "testmail02015@
Password = "Passw0rd123"
emailFieldID = "email"
passwordFieldID = "password"
loginButtonXpath = "//button[@value='btnLogin']"
self.driver.find_element_by_id(emailFieldID).send_keys(email)
self.driver.find_element_by_id(passwordFieldID).send_keys(Password)
self.driver.find_element_by_xpath(loginButtonXpath).click()

通常问题是find_element在页面完全加载之前运行过快。因此,尝试等待元素出现(在本例中,它最多等待10秒;如果元素出现得更早,则等待时间更短):

...
emailFieldID = "email"
...
WebDriverWait(browser, 10).until(EC.presence_of_element_located(browser.find_element_by_id(emailFieldID)))
self.driver.find_element_by_id(emailFieldID).send_keys(email)

之后,您可以像往常一样使用find_element

相关内容

最新更新