本文源于慕课网爬虫学习笔记:http://www.imooc.com/learn/563
爬虫:一段自动抓取互联网信息的程序。
主要组成:爬虫调度器,URL管理器,网页下载器,网页解析器
爬虫调度器:程序入口,主要负责爬虫程序的控制
URL管理器:管理带抓取URL集合和已抓取的URL集合。
URL实现的功能有:
1.添加新的URL到待爬去集合
2.判断待添加URL是否已存在
3.判断是否还有待爬的URL,将URL从待爬集合移动到已爬集合
URL的存储方式:Python内存即set()集合,关系数据库,缓存数据库
网页下载器:根据URL获取网页内容,实现由有urllib2和request
网页解析器:从网页中提取出有价值的数据,实现方法有:正则表达式、html.parser、BeautifulSoup、lxml
程序思路:主程序从初始URL开始,先通过URL管理器将初始URL放入待爬集合,再循环从待爬集合中获取URL,使用网页下载器获取URL指向网页,再对网页进行解析获取价值数据和关联URL,关联URL经判断再由URL管理器存入待爬集合,继续进行循环直到复合跳出条件或待爬集合为空。
URL管理器代码:
clas