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

Selenium遇Element not interactable异常:请求解决Spicejet附加项标签点击问题

解决Selenium操作Spicejet官网时的Element Not Interactable异常

针对鼠标悬停Add-ons标签后无法点击Zero Cancellation元素的问题,可通过以下几种方案解决:

1. 等待元素完全渲染并可交互

页面元素加载存在延迟,直接操作会导致交互异常。使用WebDriverWait配合预期条件,确保元素处于可点击状态后再执行操作:

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

driver = webdriver.Chrome()
driver.get("https://www.spicejet.com/")
driver.maximize_window()

# 处理Cookie提示(若页面存在)
try:
    accept_cookie = WebDriverWait(driver, 5).until(
        EC.element_to_be_clickable((By.XPATH, "//div[text()='Accept']"))
    )
    accept_cookie.click()
except:
    pass

# 等待Add-ons标签加载完成并悬停
addons_tab = WebDriverWait(driver, 10).until(
    EC.element_to_be_clickable((By.XPATH, "//div[text()='Add-ons']"))
)
ActionChains(driver).move_to_element(addons_tab).perform()

# 等待Zero Cancellation元素可交互后点击
zero_cancellation = WebDriverWait(driver, 10).until(
    EC.element_to_be_clickable((By.XPATH, "//div[text()='Zero Cancellation']"))
)
zero_cancellation.click()

2. 滚动元素到视口可见区域

若元素处于页面视口外,Selenium可能无法正常交互。先通过JavaScript滚动元素到可见位置:

# 悬停后执行滚动
zero_cancellation = WebDriverWait(driver, 10).until(
    EC.visibility_of_element_located((By.XPATH, "//div[text()='Zero Cancellation']"))
)
driver.execute_script("arguments[0].scrollIntoView({block: 'center'});", zero_cancellation)
zero_cancellation.click()

3. 使用JavaScript强制点击

如果元素因样式或层级问题无法被正常点击,可绕过Selenium的交互检查,直接用JavaScript触发点击:

zero_cancellation = WebDriverWait(driver, 10).until(
    EC.visibility_of_element_located((By.XPATH, "//div[text()='Zero Cancellation']"))
)
driver.execute_script("arguments[0].click();", zero_cancellation)

4. 验证元素定位是否准确

确保Zero Cancellation的定位器唯一且正确。可通过浏览器开发者工具检查元素,避免定位到隐藏的同名元素:

  • 打开开发者工具(F12),使用选择器工具定位元素
  • 核对XPath或CSS选择器是否指向目标元素

内容的提问来源于stack exchange,提问作者Vijay Sonkar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 22:42:57