leen3o leen3o - 3 months ago 48
ASP.NET (C#) Question

HTML Agility Pack HtmlDocument Show All Html?

I am using the following to get a web page which works fine

public static HtmlDocument GetWebPageFromUrl(string url)
{
var hw = new HtmlWeb();
return hw.Load(url);
}


But how to I spit the entire contents of the HTML out from the HtmlDocument into a string?

I tried HtmlDocument.ToString() but that doesn't give me all the HTML in the document? Any ideas?

Answer

DocumentNode.OuterHtml contains the full html:

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.Load("sample.html");
string html = doc.DocumentNode.OuterHtml;

In your example:

public static string GetWebPageHtmlFromUrl(string url)
{
    var hw = new HtmlWeb();
    HtmlDocument doc = hw.Load(url);
    return doc.DocumentNode.OuterHtml;
}