大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
没有爬虫就没有互联网!
爬虫的意义在于采集大批量数据,然后基于此进行加工/分析,做更有意义的事情。谷歌,百度,今日头条,天眼查都离不开爬虫。
去开源中国和Github查询C#的爬虫项目,仅有几个非常简单或是几年没有更新的项目。
而单纯性能上.NET对比JAVA,PYTHON并没有处于弱势,反而有开发上的优势(得益于世界上最强大的IDE)。爬虫性能瓶颈大多是在并发下载(网速)、IP池,那么为什么.NET没有一个强大的爬虫框架呢?
说真的我不知道,可能爬虫框架核心上比较简单,也可能.NET的开发人员没有别的语言的开发人员勤奋,或是.NET的开源氛围没有别的语言高。
所以,今天推荐一个.NET 爬虫的开源项目:DotnetSpider
开源项目地址:
https://github.com/dotnetcore/DotnetSpider
免责申明:本框架如同 Python 下著名的 Scrapy 一样只是为了帮助开发人员简化开发流程、提高开发效率,请勿使用此框架做任何违法国家法律的事情。使用者所做任何事情也与本框架的作者无关。
设计图
框架设计
参考的webmagic,所以整体架构上没有什么大的变化,设计图如下(图片是直接从webmagic上拿的)
-
Scheduler:负责URL的调度、去重,可以实现如Queue, PriorityQueueScheduler, RedisScheduler(可用于分布式)等等
-
Downloader: 负责下载HTML,可以实现如HttpDownloader, 浏览器的Downloader(WebDriver), FiddlerDownloader,本地文件Downloader等等
-
PageProcesser: 负责HTML解析、目标URL的选择
-
Pipeline: 负责数据的存储, 已实现文件存储, MySql存储, MySqlFile存储(脚本),MSSQL存储,MongoDb存储, 更多存储期待您的贡献
优点
-
可以使用Json定义爬虫
-
可以使用实体类+Attrbiute定义爬虫
-
自动创建数据库、数据表
-
支持 .NET CORE,可以跨平台
-
支持ADSL拨号换IP:如果所有爬虫统一部署, 可以实现单台机器同时运行多个任务拨号互不影响、或者一个路由下面多个电脑下多个任务拨号互不影响
-
支持自定义代理池
-
有管理平台
如果你也有好的开源项目,欢迎推荐!
微信号联系:westbrook12000(ps:加好友请备注“开源”)
回复 【小程序】获取15套小程序源码【学习+实战+赚钱】
回复 【关闭】学关闭微信朋友圈广告
回复 【实战】获取20套实战源码
回复 【福利】获取最新微信支付有奖励
回复 【被删】学查看你哪个好友删除了你巧
回复 【访客】学微信查看朋友圈访客记录
回复 【python】学微获取全套0基础Python知识手册
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/193670.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...