【问题标题】:Is there an object in C# that allows for easy management of HTML DOM?C# 中是否有允许轻松管理 HTML DOM 的对象?
【发布时间】:2011-02-09 23:27:36
【问题描述】:

如果我有一个字符串,其中包含我刚刚从 HTTP Post 返回的页面中的 html,我怎样才能将其转换为可以让我轻松遍历 DOM 的内容?

我认为 HtmlDocument 对象是有意义的,但它没有构造函数。有没有可以轻松管理 HTML DOM 的类型?

谢谢,
马特

【问题讨论】:

    标签: c# dom html-agility-pack dom-manipulation


    【解决方案1】:

    HtmlDocument 是已由 WebBrowser 控件加载的文档的实例。因此没有演员。

    Html Agility Pack 是迄今为止我用于此目的的最佳库

    来自 codeplex wiki 的示例

    HtmlDocument doc = new HtmlDocument();
    doc.Load("file.htm");
    foreach(HtmlNode link in doc.DocumentElement.SelectNodes("//a[@href]"))
    {
        HtmlAttribute att = link["href"];
        att.Value = FixLink(att);
    }
    doc.Save("file.htm");
    

    该示例显示了文件的加载,但有一些重载可以让您加载字符串或流。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-21
      • 1970-01-01
      • 1970-01-01
      • 2021-12-13
      • 2016-10-26
      • 1970-01-01
      • 1970-01-01
      • 2020-05-25
      相关资源
      最近更新 更多