簡體   English   中英

在 Python selenium 中使用 class 單擊按鈕

[英]Click button using class in Python selenium

我嘗試使用 xpath 和類名來定位並單擊按鈕。 但是,沒有任何效果。

driver.find_element(By.XPATH, "//button[@class='sc-cqCuEk ffSPoi MuiButtonBase-root sc-dliRfk hLpdQI MuiAccordionSummary-root Mui-expanded MuiAccordionSummary-gutters sc-kAKrxA ALFEK']")。

button class="sc-cqCuEk ffSPoi MuiButtonBase-root sc-iqzUVk gChJxn MuiIconButton-root MuiIconButton-sizeLarge sc-dhVevo eheiFN" tabindex="0" type="button">svg class="sc-eMigcr kvMRMj MuiSvgIcon-root MuiSvgIcon- fontSizeMedium sc-BOulX fmYgpR" focusable="false" aria- hidden="true" viewBox="0 0 24 24" data-testid="KeyboardArrowUpIcon">path d="M7.41 15.41 12 10.83l4.59 4.58L18 14l -6-6-6 6z">

svg class="sc-eMigcr kvMRMj MuiSvgIcon-root MuiSvgIcon-fontSizeMedium sc-BOulX fmYgpR" focusable="false" aria-hidden="true" viewBox="0 0 24 24" data-testid="KeyboardArrowUpIcon"> /path>

嘗試定位並點擊它

WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "sc-cqCuEk.ffSPoi.MuiButtonBase-root.sc-iqzUVk.gChJxn.MuiIconButton-root.MuiIconButton-sizeLarge.sc-dhVevo.eheiFN"))).click()

您還需要以下導入:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time as t

編輯:在不太可能的情況下,您有絕對相同的 X 個按鈕並且您想單擊所有按鈕 (??,:) 您可以執行以下操作

buttons = WebDriverWait(browser, 20).until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, "sc-cqCuEk.ffSPoi.MuiButtonBase-root.sc-iqzUVk.gChJxn.MuiIconButton-root.MuiIconButton-sizeLarge.sc-dhVevo.eheiFN")))
for button in buttons:
    button.click()
    t.sleep(0.5)

暫無
暫無

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

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