You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium中如何解决element click interception异常?报错信息:Element is not clickable at point (812, 763) (Session info: chrome=95.0.4638.54)

Hey there, I’ve dealt with this annoying element click interception error countless times in Selenium projects—totally get how frustrating it is. Let’s walk through the most reliable fixes, starting with the ones that follow best practices first.

Fixes for "Element is not clickable at point" Error

1. Wait for the Element to Be Fully Clickable (Top Recommendation)

More often than not, this error happens because the element is in the DOM but isn’t fully rendered yet, or a temporary loading overlay is blocking it. Using explicit waits to wait for the element to be clickable is the cleanest solution:

Python Example:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# Wait up to 10 seconds for the element to become clickable
wait = WebDriverWait(driver, 10)
target_element = wait.until(EC.element_to_be_clickable((By.ID, "your-element-id")))
target_element.click()

Java Example:

import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.openqa.selenium.support.ui.ExpectedConditions;
import java.time.Duration;

WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10));
WebElement targetElement = wait.until(ExpectedConditions.elementToBeClickable(By.id("your-element-id")));
targetElement.click();

2. Scroll the Element Into View

If the element is off-screen (like at the bottom of a long page), Chrome won’t let you click it until it’s in the visible viewport. Scroll to the element first before clicking:

target_element = driver.find_element(By.CSS_SELECTOR, "your-element-selector")
# Scroll the element into the center of the viewport
driver.execute_script("arguments[0].scrollIntoView({block: 'center'});", target_element)
target_element.click()

3. Use JavaScript to Trigger the Click

If other methods fail (e.g., a persistent overlay you can’t close), you can bypass the browser’s click interception by using JavaScript to directly fire the click event. This is a bit of a workaround, but it works when nothing else does:

target_element = driver.find_element(By.XPATH, "//your/xpath/here")
driver.execute_script("arguments[0].click();", target_element)

4. Remove or Close Blocking Elements

Sometimes a cookie consent popup, modal, or loading spinner is covering your target element. You’ll need to handle these first:

  • Close a cookie popup (with error handling in case it doesn’t exist):
from selenium.common.exceptions import NoSuchElementException

try:
    cookie_close_btn = driver.find_element(By.CSS_SELECTOR, ".cookie-consent__close")
    cookie_close_btn.click()
except NoSuchElementException:
    # No popup? Just proceed
    pass
  • Wait for a loading overlay to disappear:
wait = WebDriverWait(driver, 10)
wait.until(EC.invisibility_of_element_located((By.CSS_SELECTOR, ".loading-overlay")))

5. Adjust Browser Window Size

A tiny browser window might push the element into an unclickable area. Maximize the window or set a fixed resolution:

# Maximize the window
driver.maximize_window()

# Or set a specific size (e.g., 1080p)
driver.set_window_size(1920, 1080)

内容的提问来源于stack exchange,提问作者Om Prakash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 22:02:48