如何处理“element is not attached to the page document”爬虫异常

在爬取动态加载内容时遇到StaleElementReferenceException异常,尝试使用WebDriverWait无效。作者发现元素可能存在但未加载,通过设置延迟(sleep)成功解决。然而,延时时间依赖于网速,不具有一致性。寻求更优解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本人在爬某网站时,网站有一个特殊设计,即在当前页面点击按钮刷新内容。当我爬取其中内容时,总是碰到这个错误:

StaleElementReferenceException('stale element reference: element is not attached to the page document
                                      (Session info: chrome=90.0.4430.212)', None, None)

使用WebDriverWait等待都不好使,网上也搜了不少,但都不解决问题。

不过后来我简单一招解决了。既然这个元素存在,但你又检索不到,只能证明你检索的时候它还不存在。

那就等着你出来:

sleep(5.18)

OK,所有问题迎刃而解。

但这里依然有个问题,休眠多长时间跟网速有关,我没找到很完美的方案。WebDriverWait没想象中的有用。

哪位能提供点思路?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值