【问题标题】:HTMLAgilityPack, HTML duplicate IDsHTMLAgilityPack,HTML 重复 ID
【发布时间】:2010-04-23 05:46:43
【问题描述】:

嗨:这与here 类似。但需要在服务器级别而不是客户端级别完成。目前我使用 HTMLAgilityPack,有没有我可以检测到重复的 ID?提前致谢。

【问题讨论】:

    标签: c# html html-agility-pack


    【解决方案1】:

    这里有一个快速的方法:

    HtmlDocument doc = new HtmlDocument();
    doc.LoadHtml(htmlString);
    
    var count = new Dictionary<string, int>(); 
    
    foreach (var node in doc.DocumentNode.Descendants())
    {
        string id = node.GetAttributeValue("id", null);
        if (id != null)
        {
            if (count.ContainsKey(id)) count[id] += 1;
            else count.Add(id, 1); 
        }
    }
    
    var duplicates = count.Where( id => id.Value > 1 );
    

    这基本上解析了整个文档,跟踪哈希中的计数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-20
      • 2017-02-25
      • 2012-07-09
      相关资源
      最近更新 更多