簡體   English   中英

我無法點擊按鈕

[英]I can't click the button

我無法單擊此網頁上的按鈕。

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")

您可以嘗試使用find_elements_by_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()

輸出

在此處輸入圖片說明

要等待元素並在頁面加載后單擊,請執行以下操作。
還添加了登錄。

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

在第 4 行中,您正在使用:

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

有多種方法可以做到這一點:

方法一:

您可以將driver.find_elements_by_class_name替換為driver.find_element_by_class_name

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

方法二:

您必須將 [0] 放在那里,因為單擊功能不接受列表,要繞過它,您必須從列表中獲取第一項並單擊它。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM