6

HTTP Post から返されたばかりのページの html を含む文字列がある場合、それを DOM を簡単にトラバースできるようにするにはどうすればよいでしょうか?

HtmlDocument オブジェクトは理にかなっていると思いましたが、コンストラクターがありません。HTML DOM を簡単に管理できる型はありますか?

ありがとう、
マット

4

1 に答える 1

9

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");

この例はファイルのロードを示していますが、文字列またはストリームをロードできるオーバーロードがあります。 

于 2010-04-20T04:11:51.443 に答える