如何使用HTML Agility Pack
如何使用HTML Agility Pack?
我的XHTML文档不是完全有效。这就是为什么我要使用它。如何在项目中使用它?我的项目在C#中。
回答:
首先,将HTMLAgilityPack nuget软件包安装到您的项目中。
然后,例如:
HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();// There are various options, set as needed
htmlDoc.OptionFixNestedTags=true;
// filePath is a path to a file containing the html
htmlDoc.Load(filePath);
// Use: htmlDoc.LoadHtml(xmlString); to load from a string (was htmlDoc.LoadXML(xmlString)
// ParseErrors is an ArrayList containing any errors from the Load statement
if (htmlDoc.ParseErrors != null && htmlDoc.ParseErrors.Count() > 0)
{
// Handle any parse errors as required
}
else
{
if (htmlDoc.DocumentNode != null)
{
HtmlAgilityPack.HtmlNode bodyNode = htmlDoc.DocumentNode.SelectSingleNode("//body");
if (bodyNode != null)
{
// Do something with bodyNode
}
}
}
(注意:此代码仅是示例,不一定是最佳/唯一方法。请不要在自己的应用程序中盲目使用它。)
该HtmlDocument.Load()方法还接受一个流,该流在与.NET框架中的其他面向流的类集成时非常有用。虽然HtmlEntity.DeEntitize()
是正确处理html实体的另一种有用方法。
HtmlDocument
这HtmlNode
是您最常使用的类。与XML解析器类似,它提供了接受XPath表达式的selectSingleNode和selectNodes方法。
注意HtmlDocument.Option??????
布尔属性。这些控制Load和LoadXML方法处理HTML / XHTML的方式。
还有一个名为HtmlAgilityPack.chm
的已编译帮助文件,该文件对每个对象都有完整的引用。这通常在解决方案的基本文件夹中。
以上是 如何使用HTML Agility Pack 的全部内容, 来源链接: utcz.com/qa/424637.html