You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否为指定元素生成通用XPath?需验证禁用后src含red

通用XPath解决方案

当然可以找到适用于这两个元素的通用XPath,以下是几种可行的方案:

方案1:匹配按钮下所有目标img元素

直接定位到目标按钮下的所有img元素,XPath为:

//div[@class='name-slider-header']//button//img

如果该按钮下只有这两个img元素,这个XPath会直接选中它们。后续代码中可以遍历获取到的元素列表,逐个验证src属性是否包含"red",同时确认对应按钮处于disabled状态(注意:如果disabled是按钮的状态而非img的,需要结合按钮的状态筛选)。

方案2:结合disabled状态精准筛选

如果需要直接定位到已禁用按钮下的img元素,可以在XPath中加入按钮的disabled属性条件:

//div[@class='name-slider-header']//button[@disabled]//img

这个XPath会直接返回所有处于禁用状态的目标按钮下的img元素,无需额外判断按钮状态,直接遍历验证src即可。

方案3:限制仅选中前两个img元素

如果目标按钮下还有其他img元素,只想选中前两个,可以用位置索引限制:

//div[@class='name-slider-header']//button//img[position() <= 2]

代码示例(以Selenium Java为例)

// 获取已禁用按钮下的所有目标img
List<WebElement> disabledSliderImgs = driver.findElements(By.xpath("//div[@class='name-slider-header']//button[@disabled]//img"));
// 遍历验证每个img的src属性
for (WebElement img : disabledSliderImgs) {
    assert img.getAttribute("src").contains("red") : "图片src未包含'red'";
}

内容的提问来源于stack exchange,提问作者Max Brian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 08:20:49