如何使用python硒登录Openload.co?

时间:2019-01-01 17:16:21

标签: python selenium

我正在尝试使用python Selenium Chrome驱动程序登录openload.co,但出现以下错误:

  

消息:元素不可交互

我正在使用以下代码,并且错误发生在代码的最后一行,我无法将键发送到输入标签。

from selenium import webdriver
path="path_to_chrome_driver"  #add chromedriver path
driver=webdriver.Chrome(path)
from selenium.webdriver.common.keys import Keys
driver.get('https://openload.co/login')
email = driver.find_element_by_xpath('//*[@id="loginform-email"]')
email.send_keys("example@xyz.com")

我搜索了stackoverflow上的问题,并找到了以下链接similar question,该链接可能未指向正确的xpath或css_selector。但是我似乎找不到。 我在这里做什么错了?

3 个答案:

答案 0 :(得分:2)

这是因为当您单击右上方的“登录”按钮时,HTML中出现了一个模式。有重复的ID。您可以尝试像这样 http://username:password@openload.co/ 传递密码和用户名吗?

@john试试这个,对我有用:

t

答案 1 :(得分:1)

尝试在发送密钥之前单击元素。

driver.find_element_by_xpath('//*[@id="loginform-email"]').click()

因此,光标将在电子邮件文本框字段上处于活动状态,因此该元素应可交互使用。

答案 2 :(得分:1)

页面上有两种形式:第一种用于登录,第二种用于登录。两者的输入字段都具有相同的@id值。您需要选择登录表单:

email = driver.find_element_by_xpath('//h1[.="Login"]/following::*[@id="loginform-email"]')
email.send_keys("example@xyz.com")