当前位置:  开发笔记 > 编程语言 > 正文

用于.NET的HTML解析库

如何解决《用于.NET的HTML解析库》经验,为你挑选了1个好方法。

我正在寻找解析HTML的库来提取链接,表单,标签等.

http://www.majestic12.co.uk/projects/html_parser.php

http://www.netomatix.com/Products/DocumentManagement/HtmlParserNet.aspx

http://www.developer.com/net/csharp/article.php/2230091

LGPL或任何其他商业开发友好许可证是优选的.

你有过这个图书馆的经验吗?或者你能推荐另一个类似的图书馆?



1> Marc Gravell..:

该HTML敏捷性包恰好有这种类型的事情的例子,使用XPath熟悉的查询-例如(从主页),找到所有链接很简单:

foreach(HtmlNode link in doc.DocumentElement.SelectNodes("//a@href")) {
    //...
}

编辑

截至2012年6月19日,上面的代码以及HTML Agility Pack示例页面上显示的唯一代码示例将不起作用.只需稍微调整,如下所示.

HtmlDocument doc = new HtmlDocument();
doc.Load("file.htm");

foreach (HtmlNode link in doc.DocumentNode.SelectNodes("//a[@href]"))
{
  HtmlAttribute att = link.Attributes["href"];
  att.Value = Foo(att); // fix the link
}
doc.Save("file.htm");


HTML Agility Pack很棒,我也推荐它.
同意.我们在生产环境中使用它,我们在几年内解析了大约50,000(X)个HTML文件/小时.工作得很好.
推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有