Selenium发送密钥登录框无效

时间:2015-11-20 04:59:24

标签: python selenium

我正在尝试使用selenium登录我的draftkings帐户,但我在输入电子邮件和密码时遇到问题。

driver = webdriver.Firefox()
driver.get("https://www.draftkings.com/")
driver.find_element_by_xpath(".//*[@id='bs-example-navbar-collapse-1']/ul/li[3]/a").click()

抛出错误

driver.find_element_by_xpath(".//*[@id='Username']").send_keys('username')

什么都不做

elem = driver.find_element_by_xpath(".//*[@id='Username']")
driver.execute_script("arguments[0].setAttribute('value', 'username')",elem)

2 个答案:

答案 0 :(得分:2)

不幸的是,该页面有4个ID为Username的元素。

你需要过滤掉其中一个:

for x in driver.find_elements_by_css_selector("#Username"):
    if x.is_displayed():
        x.send_keys('username')
        break

答案 1 :(得分:0)

以下是我的工作 - 在xpath中使用索引。

#Click Sign In Button
driver.find_element_by_xpath(".//*[@id='bs-example-navbar-collapse-1']/ul/li[3]/a").click()
#Type Username
driver.find_element_by_xpath("(//*[@id='Username'])[3]").send_keys("Username")
#Type Password
driver.find_element_by_xpath("(//*[@id='Password'])[2]").send_keys("Password")
#Click Submit button
driver.find_element_by_xpath("(//div[@class='login_section']//a[@class='dk-btn dk-btn-success'])[2]").click()