11回答

2收藏

讨论关于爬虫框架和自定义实现方面的问题

问答交流 问答交流 4899 人阅读 | 11 人回复 | 2019-11-25

大家好,请问爬虫自定义框架分为哪几个模块?

最好可以提供一个个人的小案例列出来举例一下。

谢谢!
分享到:
回复

使用道具 举报

回答|共 11 个

ZOR

发表于 2019-11-25 16:17:21 | 显示全部楼层

一般来讲 有五大模块:
爬虫调度器:负责统筹其他四个模块的协调工作
URL管理器:管理URL链接,维持已经爬取的URL集合和未爬取的URL集合,提供新的URL链接接口
HTML下载器: 用于从URL管理器中获取未爬虫的URL链接并下载HTML网页
HTML解析器:从HTML下载器中获取已经下载的HTML网页,并从中解析出新的URL链接交给URL管理器
数据存储器:用于将HTML解析器解析出来的数据通过文件或者数据库形式储存起来
回复

使用道具 举报

Voccoo

发表于 2019-11-25 16:18:35 | 显示全部楼层

这个东西详细情况还是要结合自己的情况来看。
比如我这边的。框架里大模块分别为:
1.代理模块
2.爬取模块
3.清理模块
4.入库模块
5.预警模块
6.统计模块
回复

使用道具 举报

彼岸花

发表于 2019-11-25 16:19:33 | 显示全部楼层

可以参考scrapy,调度,下载,解析,存储
回复

使用道具 举报

非牛

发表于 2019-11-25 16:24:27 | 显示全部楼层

补充下:
去重模块
元数据管理模块
回复

使用道具 举报

sfhfpc

发表于 2019-11-25 16:25:29 | 显示全部楼层

我也建议参考 Scrapy 框架,各部分功能齐全。框架结构图如下,很清晰了。

![](https://bbs.nightteam.cn/upload/images/201911/16_24_55_18252)

当然,你也可以根据自己的需求添加其他模块。
回复

使用道具 举报

净无余

发表于 2019-11-25 16:56:38 | 显示全部楼层

谢谢大家,那我就参考scrapy,还有一个就是redis库取url值时,我想把取值的方法独立开来,但又总是写的很乱。大家有什么好的建议也麻烦指教一二。小生谢谢各位。
回复

使用道具 举报

净无余

发表于 2019-11-25 16:57:54 | 显示全部楼层

谢谢你
回复

使用道具 举报

净无余

发表于 2019-11-25 16:58:16 | 显示全部楼层

好的,谢谢你
回复

使用道具 举报

挖掘机小王子

发表于 2019-11-25 19:26:56 | 显示全部楼层

https://github.com/scrapyhub/aioScrapy 这是我开发的一个类似scrapy的爬虫框架,不过不是分布式的。aioScrapy是一款基于asyncio与aiohttp的异步协程爬虫框架。
回复

使用道具 举报