繁体   English   中英

Selenium Python - 单击元素后没有任何反应

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM