如何使用AngleSharp DLL组件来解析xHTML源码?

2026-05-01 07:106阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计612个文字,预计阅读时间需要3分钟。

如何使用AngleSharp DLL组件来解析xHTML源码?

`AngleSharp` 是一款基于 .NET 框架的 HTML 解析库。它提供了简洁的 API 来处理 HTML 和 XML 文档,支持现代 Web 标准,并且易于使用。

AngleSharp是基于.NET(C#)开发的专门为解析xHTML源码的DLL组件。

项目地址:github.com/FlorianRappl/AngleSharp

我主要介绍是一些使用AngleSharp常用的方法,跟大家介绍,我会以易盾网络站点作为原型。 其它的类似组件有:

国内:Jumony
github地址: github.com/Ivony/Jumony

如何使用AngleSharp DLL组件来解析xHTML源码?

国外:Html Agility Pack
项目地址:htmlagilitypack.codeplex.com/

具体大家可以自行搜索对比三者的区别和性能。接下来咱们主要讨论主角是AngleSharp

引入AngleSharp至项目,用NuGet工具执行命令(其实我是在装逼。) Install-Package AngleSharp

在项目中添加引用Using AngleSharp

首先我们获取CnBlogs首页的HTML源代码

static public string GetHtml() { HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create("www.jb51.net"); HttpWebResponse response = (HttpWebResponse)myReq.GetResponse(); // Get the stream associated with the response. Stream receiveStream = response.GetResponseStream(); // Pipes the stream to a higher level stream reader with the required encoding format. StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8); return readStream.ReadToEnd(); }

获取jb51首页当前所有博客文章的标题

private static void Main(string[] args) { //找出所有文章标题 string cnblogsHtml = GetHtml(); //加载HTML var document = DocumentBuilder.Html(cnblogsHtml); //这里必须要使用== 不能使用Equals var titleItemList = document.All.Where(m => m.ClassName == "titlelnk"); int iIndex = 1; foreach (var element in titleItemList) { Console.WriteLine(iIndex + ":" + element.InnerHtml); iIndex++; } }

以上代码输出内容:

1:JNDI学习总结(三)——Tomcat下使用Druid配置JNDI数据源 2:我们前端是怎么跟设计师沟通的 3:MVC5+EF6 入门完整教程六 4:试议常用Javascript 类库中 throttle 与 debounce 辅助函数的区别 5:孤独的走过年轻 6:上周热点回顾(11.10-11.16) 7:Android动画-补间(Tween)动画 8:朴素贝叶斯算法的python实现 9:MVC三层级联方式 10:C# 标签(条码)的打印与设计(一) 11:OpenCASCADE Make Primitives-Box 12:基于solr实现hbase的二级索引 13:(十六)WebGIS中偏移补偿量引发的问题之探讨 14:javascript小游戏--生命游戏 15:Android动画-帧动画 16:C# Socket学习笔记一 17:lua表排序 18:ZooKeeper系列 第一篇:ZooKeeper快速入门 19:—— 9 编辑器代码分块着色-高亮显示! 20:华盛顿大学计算机视觉课程笔记(一)

官方有提供详细的文档和例子,大家可以去看一下。此插件最大的优势:支持输出Javascript、Linq语法、ID和Class选择器、动态添加节点。实为.NET开发之利器。

AngleSharp文档:github.com/FlorianRappl/AngleSharp/wiki/Documentation

AngleSharp例子(Demo):github.com/FlorianRappl/AngleSharp/wiki/Examples

本文共计612个文字,预计阅读时间需要3分钟。

如何使用AngleSharp DLL组件来解析xHTML源码?

`AngleSharp` 是一款基于 .NET 框架的 HTML 解析库。它提供了简洁的 API 来处理 HTML 和 XML 文档,支持现代 Web 标准,并且易于使用。

AngleSharp是基于.NET(C#)开发的专门为解析xHTML源码的DLL组件。

项目地址:github.com/FlorianRappl/AngleSharp

我主要介绍是一些使用AngleSharp常用的方法,跟大家介绍,我会以易盾网络站点作为原型。 其它的类似组件有:

国内:Jumony
github地址: github.com/Ivony/Jumony

如何使用AngleSharp DLL组件来解析xHTML源码?

国外:Html Agility Pack
项目地址:htmlagilitypack.codeplex.com/

具体大家可以自行搜索对比三者的区别和性能。接下来咱们主要讨论主角是AngleSharp

引入AngleSharp至项目,用NuGet工具执行命令(其实我是在装逼。) Install-Package AngleSharp

在项目中添加引用Using AngleSharp

首先我们获取CnBlogs首页的HTML源代码

static public string GetHtml() { HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create("www.jb51.net"); HttpWebResponse response = (HttpWebResponse)myReq.GetResponse(); // Get the stream associated with the response. Stream receiveStream = response.GetResponseStream(); // Pipes the stream to a higher level stream reader with the required encoding format. StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8); return readStream.ReadToEnd(); }

获取jb51首页当前所有博客文章的标题

private static void Main(string[] args) { //找出所有文章标题 string cnblogsHtml = GetHtml(); //加载HTML var document = DocumentBuilder.Html(cnblogsHtml); //这里必须要使用== 不能使用Equals var titleItemList = document.All.Where(m => m.ClassName == "titlelnk"); int iIndex = 1; foreach (var element in titleItemList) { Console.WriteLine(iIndex + ":" + element.InnerHtml); iIndex++; } }

以上代码输出内容:

1:JNDI学习总结(三)——Tomcat下使用Druid配置JNDI数据源 2:我们前端是怎么跟设计师沟通的 3:MVC5+EF6 入门完整教程六 4:试议常用Javascript 类库中 throttle 与 debounce 辅助函数的区别 5:孤独的走过年轻 6:上周热点回顾(11.10-11.16) 7:Android动画-补间(Tween)动画 8:朴素贝叶斯算法的python实现 9:MVC三层级联方式 10:C# 标签(条码)的打印与设计(一) 11:OpenCASCADE Make Primitives-Box 12:基于solr实现hbase的二级索引 13:(十六)WebGIS中偏移补偿量引发的问题之探讨 14:javascript小游戏--生命游戏 15:Android动画-帧动画 16:C# Socket学习笔记一 17:lua表排序 18:ZooKeeper系列 第一篇:ZooKeeper快速入门 19:—— 9 编辑器代码分块着色-高亮显示! 20:华盛顿大学计算机视觉课程笔记(一)

官方有提供详细的文档和例子,大家可以去看一下。此插件最大的优势:支持输出Javascript、Linq语法、ID和Class选择器、动态添加节点。实为.NET开发之利器。

AngleSharp文档:github.com/FlorianRappl/AngleSharp/wiki/Documentation

AngleSharp例子(Demo):github.com/FlorianRappl/AngleSharp/wiki/Examples