Python + Selenium: 测试中如何爬取src=“placeholder.jpg“、包含orginal-data的图片 -- 进阶篇

本文探讨了在自动化测试中使用Python Selenium爬取包含original-data属性的图片时遇到的问题,主要是图片延迟加载导致的翻页错误。通过分析不同翻页方式,重点研究了点击事件在图片渲染完成前可能导致的无效点击。解决方案包括使用延迟操作、调整webdriver模式和采用反复点击策略,最终在非headless模式下实现了预期的翻页效果。
摘要由CSDN通过智能技术生成

这不是很简单的问题?直接获取img标签的original-data属性不就完事?

先来看看包含original-data属性的图片案例:

可以看出图片显示是延迟的。先出现一张名为“placeholder.jpg”的“等待图片”,然后加载original-data指向的图片。图片完全加载之前出现一段等待时间,渲染时感觉上像是“闪”了一下(flash) 。至少Chrome浏览器视觉上看到是这样子的。这有什么问题?

由于是组图,所以需要“自动翻页”。翻页有两种主要方式:通过加载url网址和通过点击事件翻页。这里讨论的是第二种方式,所以第一种方式分析略。

浏览器渲染需要一定的时间。如果通过图片的父标签的点击事件来完成翻页,当目标图片的父元素(Parent element)已经加载,而图片元素仍在等待下载未渲染完成期间,就极有可能会出现点击事件的空白状态。此时,仍按照正常状况进行处理,就会出现错误。

直接通过selenium操作webdriver的element元素的点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值