[英]Selenium Python - Nothing happens after click on element
我是 selenium 的新手,我嘗試在頁面上導航並單擊按鈕以使用 selenium web 驅動程序進入下一頁。
這是我的python代碼:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
WebDriverWait(driver, 30).until(EC.presence_of_element_located((By.XPATH, '//*[@id="page"]/div/div/div[5]/div/div/div/div[3]/div/span[2]')))
driver.find_element(By.XPATH, '//*[@id="page"]/div/div/div[5]/div/div/div/div[3]/div/span[2]').send_keys(Keys.RETURN)
print('Element found')
除了send_keys(Keys.RETURN)
我還嘗試過send_keys(Keys.ENTER)
和click()
。 在所有情況下,“找到的元素”語句都會打印到控制台,但網頁上沒有任何反應。 這是按鈕的 HTML 部分:
<span class="ACME-src-ACME-ui-Pagination--arrowRight">
<i class="flaticon-right-arrow"></I>
</span>
每一個幫助都受到高度贊賞。
等待!! 看起來您使用的 Xpath 不正確。 跨度不是可點擊的對象。 或者就像它們是可點擊的但不做任何事情一樣,這正是在這里發生的。 可能是“i”標簽是應該點擊的東西(但是我在Dom中看不到任何對象點擊並執行工作)
首先為我提供合適的 DOM。
您可以進一步嘗試另外兩種方法:-
button = find_element(By.XPATH, '//*[@id="page"]/div/div/div[5]/div/div/div/div[3]/div/span[2]/i')
driver.execute_script("arguments[0].click();", button)
或者
button = find_element(By.XPATH, '//*[@id="page"]/div/div/div[5]/div/div/div/div[3]/div/span[2]/i')
ActionChains(driver).move_to_element(button).click().perform()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.