python 基础爬虫框架
本人重温了此部分内容,为加深印象,写下此篇博客!看官图一乐。
URL管理器
有两个url集合:未爬取url集合与已爬取url集合。
- 通过set()设置不重复
- 每从未爬取URL集合中提取一个URL,必须将此URL放入已爬取URL集合中
有一个判断函数:判断已爬取集合不为空
有一个增添单个新URL的函数
有一个增添URL集合的函数:需用到上述的方法
HTML下载器
需用到requests对根URL进行爬取
HTML解析器
对下载的HTML文本进行解析,获取想要的内容(data+URL),新的URL返回到URL管理器的未爬取URL集合中,也可同时与data进行下一步的存储。
我一般采用Beautifulsoup
数据存储器
接受来自HTML的数据并存储在内存(一个store_data函数)
存储形式有多种:excel,csv,html,数据库等(数据展示output函数)
存储方式:数据量大时:采用分批存储,每获取一定数据就存储
爬虫调度器
对上述四种模型进行初始化并统一调度:调度的一般顺序:
先将根URL放入未爬取的URL集合中
while循环内:URL管理器,获取根URL(集合)
HTML下载器
HTML解析器(新的URL放入URL管理器中)
数据存储器