从一个节点获取多个属性

本文关键字:获取 属性 节点 一个 | 更新日期: 2023-09-27 18:32:23

我正在尝试从一个img节点中提取两个属性,但有一个NullReferenceException,突出显示的行不起作用,我无法弄清楚为什么:

var imageCollection = doc.DocumentNode.Descendants("img");
foreach (HtmlNode imageNode in imageCollection)
{
    var imageLink = imageNode.Attributes["src"].Value;
    var something=imageNode.Attributes["alt"].Value; // !!!
    if (Regex.IsMatch(imageLink, "1280.jpg"))
    {
        urls.Add(imageLink);
        //Date.Add(something);
    }
}

和 HTML 代码:

<img src="imageurl" alt="http://bbc.in/ZWwFHt" width="610" height="610">

从一个节点获取多个属性

您的某些图像没有alt属性。检查它是否为空。

var alt = imageNode.Attributes["alt"];
if(alt!=null)
{
    var something = alt.Value;
}