在html c#中提取所有标签之间的单词

时间:2012-12-01 18:40:38

标签: c# html html-agility-pack

  

可能重复:
  Getting text between all tags in a given html and recursively going through links

我如何使用敏捷包来提取标签之间的单词和信息?我只是忽略我的HTML代码中的所有标签,并获得这些标签之间的所有单词。 html代码已由我保存在字符串中!现在我想使用敏捷包来实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

那么,

这取决于。例如,如果一个标签有一个类并且它是唯一的 - 它是一个函数,但是如果有多个标签,你需要根据标签位置思考和创建你的功能,另一种情况是没有标签你会必须计算html元素;例如,您可能还需要循环tabe行。

以下示例与您需要的相似。 (不确定它是否仍然有效,因为如果页面布局发生了变化,它可能会失败。)但是它给出了这个想法,你可以从那里开始。

PS - 在提问时请提出确切的问题,而不是模糊的解释。

                String openUrl = @"http://www.ebay.com/sch/-/11724/i.html?_nkw=" + some_part_number + "&_armrs=1&LH_Complete=1";

                HtmlWeb hw = new HtmlWeb();
                hw.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)";
                HtmlAgilityPack.HtmlDocument doc = hw.Load(openUrl);

                foreach (HtmlNode nd in doc.DocumentNode.SelectNodes("//tr[@itemprop='offers']"))
                {
                    String title = "";
                    title = Regex.Split(nd.InnerHtml.ToString(), ("title='"))[1].Trim();
                    title = Regex.Split(title, "'")[0].Trim();
                }