Html敏捷包标签选择

时间:2012-11-11 18:29:33

标签: list html-agility-pack

我需要处理列表标记以便从中提取数据。问题是我需要分别分析每个列表。我试过这样的事情:

List<HtmlAgilityPack.HtmlNode> tl = new List<HtmlNode (doc1.DocumentNode.SelectNodes("//ul"));

我期待每个tl元素都是单独的ul列表,但事实证明tl只有一个元素包含html文档中的所有li标签。我究竟做错了什么?

1 个答案:

答案 0 :(得分:0)

我用以下代码解决了这个问题:

 foreach (HtmlAgilityPack.HtmlNode node in tk)
                                    {

                                        if (node.ParentNode.Name == "ul" || node.ParentNode.Name == "ol")
                                        {
                                            List<string> sh=new List<string>();
                                            var t = node.ParentNode.Elements("li");
                                            for(int i=0;i <t.Count();i++)
                                             sh.Add(t.ElementAt(i).InnerText);

                                            uoList.Add(sh);
                                        }
                                    }

现在每个uoList列表成员都代表一个ul或ol元素,其中包含该元素中的所有li元素。