python selenium 异常:selenium.common.exceptions.ElementClickInterceptedException

Posted 梦想橡皮擦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python selenium 异常:selenium.common.exceptions.ElementClickInterceptedException相关的知识,希望对你有一定的参考价值。

异常解读 Message: element click intercepted

异常错误信息为:Message: element click intercepted: Element <button … is not clickable at point (835, 33). Other element would receive the click:


(Session info: chrome=94.0.4606.81)

该错误是在使用 selenium 的时候,元素被其它内容捕获到了,进而可以分析出 BUG 原因,是由于要点击的元素点击不到。

异常解决方案

  1. 查看是否是待点击元素写错
  2. 查看是否有遮罩层
  3. 查看元素是否被隐藏或移除

具体代码不同,大家自行调整。

如果上述办法都没有解决,可以尝试在 selenium 中执行 JS 代码,进行元素的事件操作。
当然还可以尝试 ActionChains 类与 send_keys() 发送回车键。

附录

本系列文章只供记录 Python 日常开发过程中 偶遇 BUG,提供给学生作为参考数据与解决方案用,属于记录型博客,有缘分看到的读者希望可解决你的问题。

错误提示样板,可以与你的错误进行比对。

Traceback (most recent call last):
  File "E:/pythonProject/测试/d5.py", line 21, in <module>
    login_btn.click()
  File "E:\\pythonProject\\venv\\lib\\site-packages\\selenium\\webdriver\\remote\\webelement.py", line 80, in click
    self._execute(Command.CLICK_ELEMENT)
  File "E:\\pythonProject\\venv\\lib\\site-packages\\selenium\\webdriver\\remote\\webelement.py", line 633, in _execute
    return self._parent.execute(command, params)
  File "E:\\pythonProject\\venv\\lib\\site-packages\\selenium\\webdriver\\remote\\webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "E:\\pythonProject\\venv\\lib\\site-packages\\selenium\\webdriver\\remote\\errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <button class="widget-button btn btn-primary btn-small login-button btn-icon-text">...</button> is not clickable at point (835, 33). Other element would receive the click: <div class="modal-middle-container">...</div>
  (Session info: chrome=94.0.4606.81)

以上是关于python selenium 异常:selenium.common.exceptions.ElementClickInterceptedException的主要内容,如果未能解决你的问题,请参考以下文章

Python WebDriver自动化测试

为啥不可点击,但 execute_script 有意义。 href 中的 Python、Selenium、JS [重复]

爬虫&Selenium&ChromeDriver

Selenium3+python自动化(3.7版本)-chrome67环境搭建

selenium2+python自动化1-操作浏览器

浅谈python中selenium库调动webdriver驱动浏览器的实现原理