2010-02-28 8 views

Répondre

4

Entrez le code HTML dans une instance HtmlDocument, vous pouvez obtenir le HtmlNode renvoyé par la propriété DocumentNode et, à partir de là, obtenir la propriété InnerText du nœud de document. Il vous donnera tout le texte dépouillé des balises HTML.

Si vous souhaitez inclure uniquement un sous-ensemble particulier de nœuds dans votre filtrage, cela sera un peu plus difficile. Tout d'abord, vous devez charger le contenu dans une instance HtmlDocument et obtenir l'instance HtmlNode renvoyée par la propriété DocumentNode (je désignerai ce nœud par le nœud racine).

Dans le même temps, vous devez également créer une deuxième instance HtmlDocument qui contiendra le nouveau document que vous créez.

Sur le premier document, vous itérer le nœud racine récursive (note, il ne doit pas être une méthode récursive réelle , mais sémantiquement ce serait un comportement récursif), l'analyse du nœud et tout cela est nœuds enfants.

Si le nœud lui-même est l'un des noeuds que vous approuvez, vous commencerait à construire une nouvelle instance de ce noeud. Cependant, si ce n'est pas le cas, vous devez toujours traiter les nœuds enfants de l'élément, obtenir le contenu du nœud texte (puisque le texte lui-même est un nœud) et l'ajouter à tout nœud courant sur la pile (s'il y a est une).

+0

Salut, j'ai élargi un peu ma question. S'il vous plaît voir si vous pouvez commenter à cela aussi – kaivalya

+0

@kaivalya: Mise à jour la question et ma réponse. – casperOne