请问如何使用selenium点击网页上任何可交互的内容?

请问如何使用selenium点击网页上任何可交互的内容?
如题,我想做一个简单的上传数据的小程序,但是在与网页交互时候出现了问题。比如说我想设定程序自动点击“Sales", 我使用了viewport 发现这个工具栏本身是可见元素但是里面所有可交互的内容似乎都是隐藏元素。所以我想先使用 element = driver.find_elements(By.CSS_SELECTOR,"#reactMainNavigation") 锁定该工具栏,然后再锁定具体的按钮,但是似乎是不行,而且也没有报错,不知道是不是方法错误或者是少了几个步骤。

img

您好,您可以尝试使用Selenium中的ActionChains类来模拟鼠标操作,从而点击隐藏元素。您可以先将鼠标移动到该工具栏,然后再移动到具体的按钮,最后执行点击操作。以下是一个示例代码:


from selenium.webdriver.common.action_chains import ActionChains

# 找到工具栏元素
toolbar = driver.find_element_by_css_selector('#reactMainNavigation')

# 找到要点击的按钮元素
button = toolbar.find_element_by_xpath('//button[text()="Sales"]')

# 移动鼠标到工具栏
ActionChains(driver).move_to_element(toolbar).perform()

# 移动鼠标到按钮
ActionChains(driver).move_to_element(button).perform()

# 点击按钮
button.click()

希望这可以帮助您解决问题。