当前位置: 首页 > news >正文

C# 解析html

C#解析html库

网上查找有如下几个库

  • SGMLReader (好久不更新了)
  • html-agility-pack(活跃)
  • AngleSharp(活跃)
  • CsQuery(好久不更新)

选择AngleSharp

原因:能向写js一样获取元素
安装AngleSharp 1.2.0-beta.431

using AngleSharp.Html.Parser;namespace HtmlParse01;class Program
{static void Main(string[] args){var htmlPart =@"<td><div class='cell'><div>编码</div></div>
</td>
<td><div class='cell'><div><div>1234567</div></div></div>
</td>";var parser = new HtmlParser();var htmlDocument = parser.ParseDocument(htmlPart);var cellDivs = htmlDocument.QuerySelectorAll(".cell");Console.WriteLine(cellDivs.Length);foreach (var cellDiv in cellDivs){Console.WriteLine(cellDiv.TextContent.Trim());}}
}

结果如下
在这里插入图片描述
也可以向原生js一样操作dom,参考下面的文章
https://www.jb51.net/article/251499.htm

参考

https://github.com/jamietre/CsQuery
https://www.nuget.org/packages/HtmlAgilityPack/
https://github.com/MindTouch/SGMLReader
https://html-agility-pack.net/
https://github.com/AngleSharp/AngleSharp
AngleSharp
https://scrapingant.com/blog/parse-html-dot-net
https://www.jb51.net/article/251499.htm

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • FFmpeg源码:av_buffer_is_writable、av_buffer_realloc函数分析
  • Mybatis声明变量并使用
  • 服务器硬件及RAID配置
  • 基于springboot的乐享田园系统
  • Linux系统性能调优技巧
  • 学习计算机网络(三)——IP地址
  • Golang实现简单的HTTP服务,响应RESTful请求判断形状大小
  • 理解张量拼接(torch.cat)
  • cmseasy的两个注入漏洞
  • GiantPandaCV | 大模型训练:Megatron-Kwai中的内存优化
  • Lesson 57 An unusual day
  • git:安装 / 设置环境变量 / 使用
  • 009集——调用方法与递归算法 ——C#学习笔记
  • 网络安全面试题
  • 飞桨Paddle API index_add 详解
  • Git同步原始仓库到Fork仓库中
  • Java应用性能调优
  • JSONP原理
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • Nacos系列:Nacos的Java SDK使用
  • Node项目之评分系统(二)- 数据库设计
  • React as a UI Runtime(五、列表)
  • redis学习笔记(三):列表、集合、有序集合
  • select2 取值 遍历 设置默认值
  • 基于axios的vue插件,让http请求更简单
  • 开源中国专访:Chameleon原理首发,其它跨多端统一框架都是假的?
  • 前端攻城师
  • 前端面试之CSS3新特性
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 算法-插入排序
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • 学习ES6 变量的解构赋值
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • #每天一道面试题# 什么是MySQL的回表查询
  • (10)STL算法之搜索(二) 二分查找
  • (14)学习笔记:动手深度学习(Pytorch神经网络基础)
  • (2024,Flag-DiT,文本引导的多模态生成,SR,统一的标记化,RoPE、RMSNorm 和流匹配)Lumina-T2X
  • (3)nginx 配置(nginx.conf)
  • (LeetCode) T14. Longest Common Prefix
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (办公)springboot配置aop处理请求.
  • (不用互三)AI绘画:科技赋能艺术的崭新时代
  • (排序详解之 堆排序)
  • (七)Appdesigner-初步入门及常用组件的使用方法说明
  • (一)UDP基本编程步骤
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • ***原理与防范
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .net(C#)中String.Format如何使用
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .NET序列化 serializable,反序列化
  • .vimrc 配置项
  • /*在DataTable中更新、删除数据*/
  • @ConfigurationProperties注解对数据的自动封装