使用selenium webdriver验证网页上的图像

时间:2015-08-15 18:44:17

标签: java selenium webdriver

我正在尝试编写一个代码来访问产品列表页面上的每个产品并提取信息。任何人都可以向我建议逻辑和代码,以便我可以在我的项目中继续前进吗?

图像可用时的代码:

<img class="btn zoom" src="http://asset1.marksandspencer.com/is/image/mands/RC_01_T62_9451K_H4_X_EC_90?$PDP_PROD_IMAGE$" data-image-set-count="3" data-caro-slide-rel="1">

图像不可用时的代码:

<img class="btn zoom" src="http://asset1.marksandspencer.com/is/image/?$PDP_PROD_IMAGE$" data-image-set-count="1" data-caro-slide-rel="1">

1 个答案:

答案 0 :(得分:0)

您的查询不确定但是您是否要查找存在的图像列表,已加载的图像与未加载的图像。

可以使用driver.findElements(By.tag使用“img”)在Section中捕获所有图像。如果图像位于特定部分,将返回所有部分的列表。好不要尝试完整页面或驱动程序可能会找到更多图片链接标记。

首先确定t部分的测试,然后从驱动程序中获取该部分的WebElement。然后使用上面的方法查找所有图像列表

现在找到已加载和未加载的列表:

当图像未加载时,您的源(src)包含

是/图像/?$ PDP_PROD_IMAGE $“

当图像可用并加载源(src)包含

是/图像/ mands / RC_01_T62_9451K_H ..........

所以写一个xpath或css正则表达式,它可以通过比较你的src参数列出你加载和未加载的图像

等于到“src =”http://asset1.marksandspencer.com/is/image/mands/RC_01_T62_9451K_H4_X_EC_90?$PDP_PROD_IMAGE $“”=&gt;未加载图像

等于src =“http://asset1.marksandspencer.com/is/image/mands/RC_01_T62_9451K_H4_X_EC_90?$PDP_PROD_IMAGE $”“=&gt;已加载图片