【问题标题】:How to remove a tag link a href without removing the link text in Html Agility Pack?如何在不删除 Html Agility Pack 中的链接文本的情况下删除标签链接 a href?
【发布时间】:2022-07-21 21:12:13
【问题描述】:

我必须用 HAP - HTML Agility Pack 替换标签,以便在不删除链接文本的情况下获取链接。例如在这种情况下:

<p>This is <a href="mylink">the link</a></p>

我想替换链接,想要的结果应该是:

<p>This is <span>the link<span></p>

【问题讨论】:

    标签: c# .net web-scraping html-agility-pack


    【解决方案1】:

    我做了这个函数,得到一个 html 字符串作为输入。

    public string CleanLinks(string input) {
                HtmlDocument doc = new HtmlDocument();
                doc.LoadHtml(input);
                var links = doc.DocumentNode.SelectNodes("//a");
                if (links == null) return input;
                foreach (HtmlNode tb in links)
                {
                    HtmlNode lbl = doc.CreateElement("span");
                    lbl.InnerHtml = tb.InnerHtml;
    
                    tb.ParentNode.ReplaceChild(lbl, tb);
                }
    
                return doc.DocumentNode.OuterHtml;
            }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-09
      • 2011-10-07
      • 1970-01-01
      • 1970-01-01
      • 2021-09-08
      • 2022-11-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多