如何从图像获取src标签

本文关键字:src 标签 获取 图像 | 更新日期: 2023-09-27 18:05:15

我试图从img标签获得src属性。问题是我没有得到图像的src,而是一个空字符串。相反,如果我删除//img/@src,我看到a标签的内容(图像)。有什么问题吗?我看到过其他类似的问题,但是没有提供适合我的解决方案。

<div class="clearfix">
  <div class="container left">    
     <div class="logo">
        <a href="/teams/japan/japan/1348/">
        <img src="http://cache.images.core.optasports.com/soccer/teams/150x150/1348.png" alt="Giappone">
       </a>
     </div>
</div>

这是我的代码:

var shieldHomeContainer = nodeCollection.SelectSingleNode("//div[@class='container left']//div[@class='logo']//a//img/@src");

如何从图像获取src标签

试试这样

var shieldHomeContainer = nodeCollection.SelectSingleNode("//img").Attributes["src"].Value;

不能直接选择属性。您需要选择一个元素,然后调用GetAttributeValue()

var h=new HtmlAgilityPack.HtmlDocument();
h.LoadHtml(@"
<div class=""clearfix"">
  <div class=""container left"">    
     <div class=""logo"">
        <a href = ""/teams/japan/japan/1348/"" >
        <img src=""something"" alt=""Giappone"">
       </a>
     </div>
</div>");
var img = h.DocumentNode.SelectSingleNode(
 "//div[@class='container left']//div[@class='logo']//a//img");
Debug.WriteLine(img.GetAttributeValue("src","nothing"));

如果您想确保元素具有该属性,请使用img[@src]