优秀的编程知识分享平台

网站首页 > 技术文章 正文

Selenium自动化中,元素明明定位到了,但无法点击元素解决方法

nanyue 2024-08-28 19:03:57 技术文章 6 ℃

我们在进行selenium UI自动化测试时,可能会遇到元素可以定位到,但不可点击的情况,按钮点击报错:selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <button type="button" class="ant-btn ant-btn-primary">...</button> is not clickable at point (1013, 212). Other element would receive the click:



一般点击方法为:

driver.find_element_by_xpath('表达式').click()   # 普通的元素点击方式

这个问题有三种解决方式:

方式一:

element = driver.find_element_by_xpath("表达式")
driver.execute_script("arguments[0].click();", element)

方式二:

element = driver.find_element_by_xpath('表达式')
webdriver.ActionChains(driver).move_to_element(element ).click(element ).perform()#使用鼠标点击

方法三:

driver.find_element_by_xpath('表达式').send_keys(Keys.ENTER)   # 使用键盘回车键的方式

这两三方式都可以解决此问题。

注:JS动态加载 不可交互式元素的 input 点击事件。其他的提示无法找到元素标签的,可以在代码前,添加:time.sleep(你的秒数),前提是要导入time 函数。
或者是 : driver.refresh() #刷新网页/加载网页

最近发表
标签列表