C# 内置解析任何原始HTML的方法

C# 内置解析任何原始HTML的方法,c#,.net,html,.net-2.0,html-parsing,C#,.net,Html,.net 2.0,Html Parsing,我开始编写一个应用程序,从任何指定的HTML页面检索元标记内容。由于我使用.NET2.0实现这一目的,所以不能使用LINQtoXML或其他现代的东西。因此,我尝试使用XmlDocument类。不幸的是,它不能处理无效的XML文档,而大多数HTML都是无效的 我甚至不能使用HtmlAgilityPack,因为我正在编写我计划在未来销售的应用程序,所以它可能不适合商业需求 使用XmlReader似乎太难了 那么,你们将如何处理这个问题 后期编辑 我最好避免使用HtmlAgilityPack的另一个

我开始编写一个应用程序,从任何指定的HTML页面检索元标记内容。由于我使用.NET2.0实现这一目的,所以不能使用LINQtoXML或其他现代的东西。因此,我尝试使用
XmlDocument
类。不幸的是,它不能处理无效的XML文档,而大多数HTML都是无效的

我甚至不能使用HtmlAgilityPack,因为我正在编写我计划在未来销售的应用程序,所以它可能不适合商业需求

使用
XmlReader
似乎太难了

那么,你们将如何处理这个问题


后期编辑

我最好避免使用HtmlAgilityPack的另一个原因是,添加到我的项目中的库太大了。我会更高兴保持项目尽可能小

你们真的建议我用HtmlAgilityPack吗

我甚至不能使用HtmlAgilityPack,因为我正在编写我计划的应用程序 在未来销售,所以它可能不适合商业需求

正在使用Microsoft公共许可证(Ms PL),这将允许您在商业产品中使用它,这是非常自由的-也请参见和

我甚至不能使用HtmlAgilityPack,因为我正在编写我计划的应用程序 在未来销售,所以它可能不适合商业需求

正在使用Microsoft公共许可证(Ms PL),这将允许您在商业产品中使用它,它非常自由-另请参见和

HtmlDocument doc=new System.Windows.Forms.WebBrowser().Document.OpenNew(true);
doc.Write(“这是一个新的HTML文档”);

请注意,这是一个WebForms控件,在WebForms应用程序中运行它可能会遇到不同的问题。

HtmlDocument doc=new System.Windows.Forms.WebBrowser().Document.OpenNew(true);
doc.Write(“这是一个新的HTML文档”);


请注意,这是一个WebForms控件,在WebForms应用程序外运行它时可能会遇到不同的问题。

HtmlAgilityPack有什么问题?HtmlAgilityPack有什么问题?
HtmlDocument doc = new System.Windows.Forms.WebBrowser().Document.OpenNew(true);
doc.Write("<HTML><BODY>This is a new HTML document.</BODY></HTML>");