Entfernen Sie alle Klassen und IDs von geparsten HTML mit HtmlAgilityPack

c# html html-agility-pack

Frage

Ich benutze HtmlAgilityPack zum Parsen einer HTML-Seite, ich extrahiere HTML-Tags von dieser Seite wie folgt :

HtmlNode bodyContent = document.DocumentNode.SelectSingleNode("//body");
var all_text = bodyContent.SelectNodes("//div | //ul | //p | //table");

in zurückgegebenem HTML-Code enthält jedes Tag Klasse und ID, ich möchte alle ID-s und alle Klassen entfernen, wie kann ich das tun?

Akzeptierte Antwort

Vielleicht sollten Sie diesen Link überprüfen: Link .

Soweit ich kann, sagen Sie, wenn Sie HtmlNode haben, können Sie seine Eigenschaft Attribute verwenden. Diese Sammlung hat die Methode Remove (string), die den Namen des Attributs erhält, das Sie entfernen möchten. Nun, ich habe es so in einem kleinen Projekt benutzt. Ich bin mir nicht sicher, ob dir das hilft.

Also im Grunde genommen:

HtmlNode bodyContent = document.DocumentNode.SelectSingleNode("//body");
var all_text = bodyContent.SelectNodes("//div | //ul | //p | //table");

foreach(var node in all_text)
{
   node.Attributes.Remove("class");
   node.Attributes.Remove("id");
} 



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