Python 我能';不要点击按钮

Python 我能';不要点击按钮,python,selenium,Python,Selenium,我无法单击此网页上的按钮 from selenium import webdriver driver = webdriver.Chrome(r"C:\Users\name\Downloads\q\chromedriver.exe") driver.get("https://www.plusportals.com/GuardianAngels") login_button = driver.find_elements_by_class_name(&quo

我无法单击此网页上的按钮

from selenium import webdriver

driver = webdriver.Chrome(r"C:\Users\name\Downloads\q\chromedriver.exe")
driver.get("https://www.plusportals.com/GuardianAngels")

login_button = driver.find_elements_by_class_name("btn btn-primary pull-right")
login_button.submit()

将第5行替换为以下内容应该可以做到这一点:

login_button = driver.find_elements_by_class_name("btn.btn-primary.pull-right")

您可以尝试使用
通过xpath查找元素:

from selenium import webdriver


driver = webdriver.Chrome(r"C:\Users\name\Downloads\q\chromedriver.exe")
driver.get("https://www.plusportals.com/GuardianAngels")

login_button = driver.find_elements_by_xpath("//*[@class='btn btn-primary pull-right']")
login_button[0].submit()
输出

在第4行中,您正在使用: 有多种方法可以做到这一点:

方法1: 您可以将
驱动程序。按类名称查找元素
替换为
驱动程序。按类名称查找元素

login_button = driver.find_element_by_class_name("btn btn-primary pull-right")
方法2: 您必须将[0]放在那里,因为单击函数不获取列表,要绕过该选项,您必须从列表中获取第一项并单击它

login_button[0].click() or login_button[0].submit()

要等待元素并在页面加载后单击,请执行以下操作。
还添加了登录名

WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "UserName"))).send_keys("AAA")
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "Password"))).send_keys("AAA")

login_button = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input.btn.btn-primary.pull-right")))
login_button.click()
进口

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait 
from selenium.webdriver.support import expected_conditions as EC

补充了一个答案。让我知道它是否适合你。如果是,请接受/勾选答案。我知道我看到所有这些信息都晚了。我的程序,我正在努力使工程现在。老实说,我没有期待任何回应,所以谢谢你,我不能。。。当你尝试时会发生什么?你有错误吗?说“我不能”没有多大帮助。您可能会在复合类名方面遇到错误。问题是您正在使用
find\u elements\u by\u class\u name()
,然后传入3个不同的类名。您需要选择一个类名或将其转换为CSS选择器“.btn.btn primary.pull right”。
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait 
from selenium.webdriver.support import expected_conditions as EC