Selenium元素获取异常之 ElementNotInteractableException:element not interactable

描述:

1、明明组件存在,却又无法获取?
2、明明在可视化的界面看到了,就是无法捕获?
3、明明在可视化的界面正常,headless运行还是无法获取?

目前碰到的这个异常,基本都是以下四个原因导致的:

ElementNotInteractableException: Message: element not interactable (Session info: headless chrome=xx.xx.xxx.xxx)

解决建议:

1)延迟时间不够,元素还未刷新出来,增加延时time.sleep(2)2)组件有先后顺序或者已被隐藏,查看前面的组件是否正常获取

(3)分辨率不同,前端和后台(headless)的最大化的分辨率不同,需要指定分辨率才能保持一致
# 可以添加参数指定当前主机的分辨率,最大化并不能保持分辨率一致
option.add_argument("--window-size=1960,1080")4)组件覆盖,导致第一次click失败报错说点击被其他组件获取,建议先点击空白处,再进行操作,这种会报错说click事件被其他组件捕获
driver.find_element_by_xpath('/html/body').click()
  • 13
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值