Selenium类型的电子邮件密码不正确

问题描述:

我在写一个小小的Python程序来使用硒自动化电子邮件验证过程。现在,当我执行程序时,即使我是肯定他们是正确的,我总是得到“电子邮件或密码不正确”的消息;我试图在Python shell中逐行执行程序,并且我还将密码更改为没有特殊字符的密码,以确保硒没有特别问题,但没有成功,所以我认为硒不是“在认证表单中正确输入“密码。Selenium类型的电子邮件密码不正确

我正在使用python 3.6;这里是代码(当然,出于安全原因,没有真正的用户名和密码)。

from selenium import webdriver 

browser = webdriver.Safari() 
browser.get("myEmailProvider") 
emailElem = browser.find_element_by_id("usernameDisplay") 
emailElem.send_keys("myEmail") 
passwordElem = browser.find_element_by_id("password") 
passwordElem.send_keys("myEmailPassword") 
passwordElem.submit() 

有没有人知道为什么会发生这种情况?

谢谢。

当我使用Selenium输入用户名和密码时,我遇到了类似的问题。我注意到它有时会“吃”两个字母。例如,不是输入“password”,而是输入“passord”或类似的东西。

我试图找到为什么会发生这种情况,但是没有运气,但是我找到了解决方法。

我把这些东西放到while循环中。因此,在你的榜样,我会做:

passwordElem = browser.find_element_by_id("password") 
while(passwordElem != "myEmailPassword") 
    passwordElem.send_keys("myEmailPassword") 
passwordElem.submit()code here 

你也可以把一些限制多少次它可以循环它抛出错误之前,这样你就不会在无限循环结束了,但是从我的经验,正确发送最多3次尝试。

要解决这一点的最好办法是通过JavaScript来填写表格数据:

driver.execute_script('document.getElementById("usernameDisplay").value="myEmail"')