【发布时间】:2020-05-03 23:37:54
【问题描述】:
我正在尝试使用 selenium 在我的网站上自动登录。
我正在访问这个网站:http://front-desk.fr/users/accounts/login/?next=/
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
chrome_path = r"C:\Users\gaeta\OneDrive\Bureau\chromedriver.exe"
class FrontDesk:
def __init__(self,username,password):
self.username = username
self.password = password
self.bot = webdriver.Chrome(chrome_path)
def login(self):
bot = self.bot
bot.get("http://front-desk.fr/users/accounts/login/")
time.sleep(5)
email = bot.find_element_by_class_name('textinput textInput form-control')
email.send_keys(self.username)
ed = FrontDesk('myemail@gmail.com', 'password1234')
ed.login()
但发生错误:
selenium.common.exceptions.NoSuchElementException:消息:没有这样的元素:无法找到元素:{“method”:“css selector”,“selector”:“.textinput textInput 表单控制"}
这是我的网站,所以我确信这门课,我看过 SO,答案是关于 iframe,我没有。
我已经尝试过使用类、id 等。除了没有填充输入之外,一切正常。
【问题讨论】:
-
不允许使用复合类名。看看:stackoverflow.com/questions/37771604/…
-
这能回答你的问题吗? Selenium Compound class names not permitted
-
@hiropon 谢谢!我使用了另一种过滤器,它现在可以工作了,再次感谢!
标签: python selenium xpath css-selectors webdriverwait