Speichern eines bestimmten Knotens als HTML mit HtmlAgilityPack

c# html html-agility-pack

Frage

Ich habe eine Website, die eine Tabelle mit einigen Schaltflächen, Navigationsregisterkarten usw. anzeigt. Mit HtmlAgilityPack möchte ich nur den Knoten, der die Tabelle (ein Div) enthält, in einer .html-Datei speichern. Ich habe mit diesem Code experimentiert:

string dashboard = doc.DocumentNode.SelectSingleNode("//div[@id='Dashboard']").InnerHtml;
doc.LoadHtml(dashboard);
doc.Save(currDir + "\\dashboardOutputFile.html");

Dies behält jedoch nur die Textkomponenten der Tabelle und keine ihrer Layout- / Anzeigeinformationen bei. Ich habe versucht, eine Doctype-Deklaration hinzuzufügen und html- und body-Tags der Dashboard-Zeichenfolge hinzuzufügen, aber es hat keine Auswirkungen.

Jeder Rat wird geschätzt.

Grüße.

BEARBEITEN:

Ich sollte expliziter sein. Ich erfasse den HTML-Code meiner Seite, indem ich die Render-Methode überschreibe:

string dashboard = doc.DocumentNode.SelectSingleNode("//div[@id='Dashboard']").InnerHtml;
doc.LoadHtml(dashboard);
doc.Save(currDir + "\\dashboardOutputFile.html");

Nach meinem besten Wissen sollte der String "Dashboard" danach eine komplette HTML-Seite enthalten. Die resultierende HTML-Datei wird jedoch wie folgt angezeigt:

string dashboard = doc.DocumentNode.SelectSingleNode("//div[@id='Dashboard']").InnerHtml;
doc.LoadHtml(dashboard);
doc.Save(currDir + "\\dashboardOutputFile.html");

Nur der Text der Tabellenzellen wird angezeigt. Es gibt kein Tabellenlayout, keine Hintergrundfarben usw. Auch wenn ich die Datei in JSFiddle kopiere, wird es so angezeigt. Was fehlt mir, um dies zu einer vollständigen HTML-Seite zu machen?

Akzeptierte Antwort

Es gibt wahrscheinlich eine CSS-Datei, die mit dem ursprünglichen HTML verknüpft ist und nicht auf Ihrer heruntergeladenen Seite gelesen wird.




Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum