[英]How to click on a button using Selenium
我正在此頁面上使用 selenium 進行一些測試: https://www.justwatch.com/es/proveedor/hbo-max/peliculas
第一次進入該頁面時,您必須接受隱私設置,但我無法使其正常工作。 我已經嘗試了我現在的所有方法,但似乎我找不到我想要的按鈕,所以程序在等待時間結束時停止。 我要點擊的按鈕是:
<button role="button" data-testid="uc-save-button" class="sc-gsDKAQ eaUldE" style="margin: 0px 6px;">Guardar configuración</button>
我試圖通過文本 class 並使用 XPath 來定位按鈕,但不起作用。
WebDriverWait(driver, 5)\
.until(EC.element_to_be_clickable((By.CLASS_NAME, 'sc-gsDKAQ eaUldE'.replace(' ', '.'))))\
.click()
WebDriverWait(driver, 5)\
.until(EC.element_to_be_clickable((By.XPATH, '/html/body/div[2]//div/div/div/div/div[2]/div/div[2]/div/div/div/button[1]')))\
.click()
WebDriverWait(driver, 5)\
.until(EC.element_to_be_clickable((By.LINK_TEXT, 'Guardar configuración')))\
.click()
我會感謝你的幫助。
要單擊所需的元素,您可以使用以下任一定位器策略:
使用CSS_SELECTOR :
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button[data-testid='uc-save-button']"))).click()
使用XPATH :
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[@data-testid='uc-save-button' and text()='Guardar configuración']"))).click()
注意:您必須添加以下導入:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.