网站首页 > 开源技术 正文
如果我们需要抓取网络上的数据,这时候我们就要写爬虫,这里面就涉及到网页的抓取、以及网页分析与数据提取。
下面推荐2个.Net开源Html解析器,方便用于网络爬虫Html源码的解析、Html源码编辑等场景。
一、AngleSharp
这是一个基于.Net开发的,Html代码解析器,支持通过C#实现类似Jquery的方式来解析Html源码、节点创建、节点删除、节点修改、属性的添加修改等,还支持SVG、XML、MathML等格式,此外还能解析Css。
项目地址:
https://github.com/AngleSharp/AngleSharp
项目特色
1、非常出色的性能;
2、基于.NET Standard 2.0开发,支持跨平台,包括移动平台;
3、扩展性强,可以自己自定义;
4、支持LINQ语法;
5、支持类似Jquery查询功能;
6、表单提交、Http请求等;
7、Api功能符合W3C规范标准。
部分代码示例
Html代码解析
Form表单提交,并获取超链接数量
通过Class选择元素
表格单元格选择
Html元素创建
添加Class
属性操作
二、html-agility-pack
Html Agility Pack (HAP) 是一个开源的 HTML 解析库。
- 强大的容错性:HAP 对于“真实世界”中常见的 HTML 错误非常宽容,能够解析格式不规范的 HTML 文件。
- DOM 操作:它提供了一个类似 System.Xml 的对象模型,但专门用于 HTML 文档,支持对 HTML 的读写操作。
- XPath 和 XSLT 支持:用户可以使用 XPath 查询和 XSLT 转换来处理 HTML 数据,但即使不熟悉这些技术,也可以轻松上手。
项目地址:
https://github.com/zzzprojects/html-agility-pack
示例代码
获取指定的网页,并获取所有a标签的文本。
using HtmlAgilityPack;
using System;
// 加载 HTML 文件
HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load("https://www.xxx.com");
// 使用 XPath 查询
var nodes = doc.DocumentNode.SelectNodes("//a");
foreach (var node in nodes)
{
Console.WriteLine(node.InnerText);
}
- 上一篇: 渗透测试小技巧(渗透测试入门教程)
- 下一篇: 篡改企业系统数据!男子非法获利20余万元被批捕
猜你喜欢
- 2025-07-08 如何用Excel制作网页交互效果?(网页交互流程图)
- 2025-07-08 可能带来灾难性后果!微软称部分源代码遭黑客入侵
- 2025-07-08 直播弹幕源码开发很难?一招教你解决
- 2025-07-08 如何入门python爬虫?(python爬虫自学步骤)
- 2025-07-08 测试开发之前端篇-浏览器开发者工具使用
- 2025-07-08 如何复制网页上不能复制的文字?(如何复制网页上不能复制的文字f12)
- 2025-07-08 CSS实现的阴影的3D立体文字动画网页源码
- 2025-07-08 如何复制网页上无法直接复制的文字?这五种方法你需要了解
- 2025-07-08 防止学生查看答案,竟然让Chrome禁止查看源码功能
- 2025-07-08 解决网页中文字无法复制的方法,让你轻松获取想要的内容!
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)