首页 > 解决方案 > 为了使用 Python 登录网站,我应该使用哪些定位器?

问题描述

我正在尝试登录该网站。但我无法填写用户名和密码。我被困在填写用户名的步骤上。我假设我选择了错误的类名,但我不确定。我会很感激你的帮助。

我的代码:

#
   from selenium import webdriver
   from selenium.webdriver.common.keys import Keys
   from webdriver_manager.chrome import ChromeDriverManager

   driver = webdriver.Chrome(ChromeDriverManager().install())

   url = "https://portal.spryngsms.com/login?redirect=%2F"
   username = "cosmos"
   password = "1234"

   driver.get(url) 

   driver.find_element_by_class_name('form__input-wrapper tw-mb-16 ').send_keys(username)

标签: pythonseleniumxpathcss-selectorswebdriverwait

解决方案


首先find_element_by_class_name()接受单个类名,但不接受多个类名。

您需要与input元素而不是父div元素交互的第二件事。

而不是class name你应该使用css selector来标识输入元素。

对于用户名:

driver.find_element_by_css_selector(".form__input-wrapper input[type='text']").send_keys(username)

对于密码:

driver.find_element_by_css_selector(".form__input-wrapper input[type='password']").send_keys(password)

推荐阅读