首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >硒输入填写得太快了,用selenium 3.8

硒输入填写得太快了,用selenium 3.8
EN

Stack Overflow用户
提问于 2020-08-13 13:29:11
回答 1查看 175关注 0票数 0

所以我试图登录这个名为ttrockstar的网站,并且我已经编写了一个登录到该网站的函数。但是,代码似乎运行得太快,忽略了我添加到代码中的time.sleep(5)

代码语言:javascript
复制
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

PATH = r"C:\Users\shahf\Desktop\chromedriver.exe"
driver = webdriver.Chrome(PATH)
driver.get("https://play.ttrockstars.com/auth/school/student")

def login(school, username, password):
    driver.find_element_by_xpath("//input[1]").send_keys(school)
    driver.find_element_by_xpath("//input[1]").send_keys(Keys.RETURN)
    time.sleep(5)
    driver.find_element_by_xpath("//input[1]").send_keys(username)
    driver.find_element_by_id("mat-input-2").send_keys(password)
    driver.find_element_by_id("mat-input-2").send_keys(Keys.RETURN)

login("my school", "my username", "my password")

当我运行它时,它只需输入学校名称,然后删除它并输入用户名,然后弹出一个错误,说明密码框不存在。这不会是一个问题,如果它实际上提交了学校,并等待了5秒。为什么会发生这种情况?有解决办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-13 14:01:59

--以下是实现您想要的目标的步骤:

  1. 睡眠2-3秒后填写学校名称。
  2. 按其类获取下拉菜单元素,从下拉菜单元素中获取option元素并单击它。
  3. 睡眠2-3秒,从而加载用户名-密码页。
  4. 填充用户名和密码并单击enterh 211g 212

注意:这将点击第一选择从学校的选择.

以下是代码:

代码语言:javascript
复制
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

PATH = r"C:\Users\shahf\Desktop\chromedriver.exe"
driver = webdriver.Chrome(PATH)
driver.get("https://play.ttrockstars.com/auth/school/student")

def login(school, username, password):
    driver.find_element_by_xpath("//input[1]").send_keys(school)
    time.sleep(3)
    driver.find_element_by_class_name("mat-autocomplete-panel").find_element_by_class_name("mat-option").click()
    time.sleep(3)
    driver.find_element_by_xpath("//input[1]").send_keys(Keys.RETURN)
    time.sleep(5)
    driver.find_element_by_xpath("//input[1]").send_keys(username)
    driver.find_element_by_id("mat-input-2").send_keys(password)
    driver.find_element_by_id("mat-input-2").send_keys(Keys.RETURN)

login("my school", "my username", "my password")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63396290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档