前言
PS:python2.x和python3.x有很大不同,本文只讨论python3.x的爬虫实现方法。
爬虫架构
架构组成
运行流程
URL管理器
基本功能
- 添加新的url到待爬取url集合中。
- 判断待添加的url是否在容器中(包括待爬取url集合和已爬取url集合)。
- 获取待爬取的url。
- 判断是否有待爬取的url。
- 将爬取完成的url从待爬取url集合移动到已爬取url集合。
存储方式
1、内存(python内存)
待爬取url集合:set()
已爬取url集合:set()
2、关系数据库(MySQL)
urls(url, is_crawled)
3、缓存(Redis)
待爬取url集合:set
已爬取url集合:set