使用HTML敏捷包获取图像旁边的文本

本文关键字:图像 文本 获取 HTML 包获取 使用 | 更新日期: 2023-09-27 17:58:28

我需要通过解析这段html

<p class="feature_list">
<img src="candy.gif" alt="candy" title="candy"/>&nbsp;
                        x 3&nbsp;&nbsp;
<img src="lollies.gif" alt="lollies" title="lollies"/>&nbsp;
                        1&nbsp;&nbsp;
<img src="system.gif" alt="system" title="system"/>&nbsp;
                        x 1&nbsp;&nbsp;
<img src="phone.gif" alt="phone" title="phone"/>&nbsp;
                        x 1&nbsp;&nbsp;
</p>

正如你所看到的,有一个图像,然后旁边有一个类似"x3"的文本

我想做的是浏览每个图像,并记录它旁边的文本。但是,文本在"img"标记之外。

我想知道有没有使用HTML敏捷包来完成这项工作?

使用HTML敏捷包获取图像旁边的文本

以下代码:

    HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
    doc.Load(yourHtml);
    foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//img"))
    {
        Console.WriteLine(HtmlEntity.DeEntitize(node.NextSibling.InnerText).Trim());
    }

将输出:

x 3
1
x 1
x 1

注意HtmlEntity实用程序,它简化了对HTML实体(如&nbsp;)的处理