技术淘来的各种爬虫框架
Posted 未来知识库
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了技术淘来的各种爬虫框架相关的知识,希望对你有一定的参考价值。
从GitHub上淘来的各种各样语言的爬虫框架分享给大家。
Python
python自然不用多说,拥有的爬虫框架数不胜数。
[scrapy](https://github.com/scrapy/scrapy),大名鼎鼎的爬虫框架,功能强大,乃入门学习的必备良药。支持多种多样的配置特性,唯一可惜不支持分布式的特性,于是就诞生了[scrapy-redis](https://github.com/rmax/scrapy-redis)这个以redis为队列的分布式爬虫框架。
[pyspider](https://github.com/binux/pyspider),应该是个华人写的爬虫框架,可支持的配置非常多,同时也支持分布式,只需要配置中间的消息队列就可以。
[portia](https://github.com/scrapinghub/portia),可视化的爬虫框架,对于编程经验少的人来说相当适合学习。
[xcrawler](https://github.com/0xE8551CCB/xcrawler),轻量级的爬虫框架。个人很简易从读轻量级的爬虫框架的源代码入手,这样能够由浅入深,学地更有意思。
[cola](https://github.com/chineking/cola),也是很强大的分布式爬虫框架,只是可惜不支持python 3以上。
[fetchman](https://github.com/DarkSand/fetchman), 国人写的爬虫框架,采用[grequests](https://github.com/kennethreitz/grequests)来并发请求。看过源代码,写的容易理解,所以对于新手来说很实用。
[gain](https://github.com/gaojiuli/gain), 使用asyncio来异步爬取的轻量级爬虫框架。代码很容易理解,利于学习。
Java
Java接触的不是很多,所以知道的爬虫框架不多。
[webmagic](https://github.com/code4craft/webmagic),这个是国人写的爬虫框架,很好用,也很强大。源代码的阅读体验也不错,推荐写java的可以去熟悉熟悉。
[crawler4j](https://github.com/yasserg/crawler4j), 比较好的爬虫架构,对于学习和理解爬虫框架很有用。
[SeimiCrawler](https://github.com/zhegexiaohuozi/SeimiCrawler), 分布式爬虫框架,也是受到scrapy启发。支持动态渲染的页面爬虫。
[elves](https://github.com/biezhi/elves), 轻量级的爬虫框架,国人写的。易于学习和理解。
Node
node接触的更加不多,但是也淘到了不错的几个框架。
[node-crawler](https://github.com/bda-research/node-crawler),强大且流行。采用Cheerio这个包解析网页结构。
[webster](https://github.com/zhuyingda/webster),高性能的NodeJs爬虫框架,可爬取动态渲染的内容(通过headless Chrome)。
C#
C#作为笔者除了Python以外比较熟悉的语言了。但是发现其爬虫框架少的可怜。哎,不禁叹息。
[DotnetSpider](https://github.com/dotnetcore/DotnetSpider),整体架构参照了WebMagic和Scrapy,是C#中比较强大的存在。目前已经支持.net core 2.0,所以,喜欢C#的可以去玩玩。还是比较不错的支持Entity Framework。
[WebCrawler](https://github.com/zhk0603/WebCrawler),国人写的轻量级的爬虫框架。可以去学习学习~~~
【备注】: 图片来自于unsplash平台。
以上是关于技术淘来的各种爬虫框架的主要内容,如果未能解决你的问题,请参考以下文章