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

如何用XPath提取HTML中img标签的src属性值?

解决XPath提取img标签src属性的问题

嘿,我来帮你搞定这个XPath的问题!你当前的表达式有两个小错误,导致无法正常工作,我来一步步拆解并修正:

问题分析

你写的表达式//img[contains(@class,'myClass')]@src存在两个问题:

  1. 路径范围错误://img会从整个HTML文档的根节点重新查找img元素,而不是从你已经选中的<li>节点下查找,这会导致可能匹配到其他地方的img,或者在当前li下找不到目标元素。
  2. 属性提取语法错误:提取元素属性需要用/@属性名的格式,直接跟@src是不符合XPath语法的。

正确的XPath表达式

当你已经选中目标<li>元素后,应该使用相对路径来查找它下面的img,并正确提取src属性:

.//img[contains(@class,'myClass')]/@src

表达式解释

  • .//:表示从当前选中的<li>节点开始,向下递归查找所有后代元素(这样就限定了查找范围在当前li内部)
  • [contains(@class,'myClass')]:这个部分你是对的,用来过滤出class属性包含myClass的img标签(适合处理class有多个值的情况,比如<img class="myClass other" ...>)
  • /@src:正确的属性提取语法,用来获取该img元素的src属性值

额外补充:精确匹配class

如果你确定myClass是该img的唯一class值,或者需要精确匹配(避免匹配到类似myClass-extra这种带后缀的class),可以改用精确匹配的表达式:

.//img[@class='myClass']/@src

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:46:37