selenium报错:element not interact

文章目录

报错分析

报错:

python 复制代码
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable

ElementNotInteractableException异常表示无法与元素交互,通常是由于该元素不可见、被其他元素遮挡或者需要滚动页面才能被显示。

解决办法

以下是一些可能导致该异常出现的情况和解决办法:

  1. 元素被遮挡:该元素可能被其他元素遮挡,或者被当前浏览器窗口以外的元素遮挡。可以尝试使用execute_script()方法将页面滚动到该元素可见的位置,或者使用ActionChains类模拟鼠标操作移动到该元素上方。

  2. 元素未加载完成:该元素可能还未加载完成就被尝试交互了。可以使用WebDriverWait类等待元素加载出来后再进行交互操作,例如:

python 复制代码
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

# 等待元素加载出来
element = WebDriverWait(driver, 10).until(
    EC.element_to_be_clickable((By.XPATH, "xpath of element"))
)

# 点击元素
element.click()
  1. 元素被设为不可交互:该元素可能被设置为不可交互(例如disabled属性)。在这种情况下,需要检查该元素属性是否正确,或者尝试使用JavaScript代码删除该属性,例如:
python 复制代码
element = driver.find_element_by_xpath("xpath of element")
driver.execute_script("arguments[0].removeAttribute('disabled')", element)
相关推荐
卓码软件测评2 小时前
第三方软件测试测评机构【使用web_reg_save_param_ex函数:掌握LoadRunner关联的黄金法则 】
测试工具·ci/cd·性能优化·单元测试·测试用例
大飞记Python7 小时前
代码级教程|用Playwright实现Web自动化测试:从零到录制生成脚本
自动化测试·python·selenium·playwright
weixin_438732107 小时前
ChromeDriver谷歌驱动下载
linux·chrome·selenium·自动化·mac·chrome devtools·chromedriver
快乐小胡!9 小时前
【自动化测试】Selenium选择/定位元素的基本方法
python·selenium·测试工具
PhotonixBay11 小时前
车载HUD的 TFT 屏被动散热仿真与太阳光测试
测试工具
0思必得013 小时前
[Web自动化] Selenium模拟用户的常见操作
前端·python·selenium·自动化
Apifox.13 小时前
测试用例越堆越多?用 Apifox 测试套件让自动化回归更易维护
运维·前端·后端·测试工具·单元测试·自动化·测试用例
AI_567814 小时前
K8s新手入门:从“Pod创建”到“服务暴露”,3个案例理解容器编排
人工智能·学习·测试工具
我的offer在哪里14 小时前
Figma 技术深度解析:重新定义协作设计的底层架构与工程实践
测试工具·流程图
深蓝电商API16 小时前
Selenium无头浏览器配置与反检测技巧
爬虫·python·selenium