仅使用html敏捷性从html获取文本

时间:2011-01-27 15:01:43

标签: html-parsing html-agility-pack

我正在尝试从html中删除与html敏捷性有关的所有内容,但我需要保留文本。例如,从此标记:

<TR><TD> 
<B><A HREF="survival/index.html">Survival</A></B><BR> 
<I>Be Suspicious, Be Worried, Be Prepared</I><BR> 
<TD> 

我只想保持“怀疑......”

我有这种方法,但效果不好:

    private static HtmlDocument RemoveHTML(HtmlDocument document)
    {
        HtmlDocument textOfDoc = new HtmlDocument();
        foreach (var node in document.DocumentNode.SelectNodes(".//p|.//title|.//body"))
        {
            var newNode = HtmlNode.CreateNode(node.InnerText+" ");
            textOfDoc.DocumentNode.AppendChild(newNode);
        }
        return textOfDoc;
    }

谢谢!

1 个答案:

答案 0 :(得分:0)

看起来你只是提取P,TITLE和BODY标签。如果你也想要我的标签,你需要这样做:

document.DocumentNode.SelectNodes(".//p|.//title|.//body|.//i")