【问题标题】:Selenium fill in user name/pwd, only filling one fieldselenium 填写用户名/密码,只填写一个字段
【发布时间】:2018-01-05 03:51:52
【问题描述】:

我正在尝试进行一些网络抓取,需要让 selenium 填写登录凭据、名称和密码。

我按照这里的指示Fill username and password using selenium in python

这是我的代码:

username = driver.find_element_by_class_name('login-username')
username.send_keys('bob')

password = driver.find_element_by_class_name('login-password')
password.send_keys('pop')

driver.find_element_by_id('login_checkbox').click()
driver.find_element_by_class_name('ok').click()

这可以获取用户名,但不会前进到密码。我最终在用户名字段中出现 bobpop,自然无法继续前进。

请帮我弄清楚如何做到这一点!

【问题讨论】:

  • 应该是driver.find_element_by_class_name,是不是打错字了?
  • 也许添加显式等待会有所帮助。
  • 您是否收到任何错误消息。我可以有网站网址吗?
  • 你能与登录表单共享部分 HTML 吗?

标签: python selenium


【解决方案1】:

与密码元素的显式本地化相比,通常更实用的是这样的:

username.send_keys('bob' + Keys.TAB + 'pop' + Keys.ENTER)

【讨论】:

  • 我有一种感觉,keys.tab 将成为其中的一部分,但无法使其正常工作。这成功了。非常感谢!
猜你喜欢
  • 1970-01-01
  • 2014-02-06
  • 1970-01-01
  • 1970-01-01
  • 2014-07-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多