1.学习python包并实现基本的爬虫过程
- “发送请求——获得页面——解析页面——抽取并储存内容”的流程
- 爬虫相关的包:urllib、request、bs4、scrapy、pyspider等,可从request和xpath开始,其中,request赋值链接网站,返回网页。xpath用于解析网页,便于抽取数据。若需要爬取异步加载的网站,可以学习浏览器抓包分析真实请求或者学习selenium来实现自动化。
2.了解非结构化数据的存储
- 对于爬取回来的数据,可以通过pandas的方法存为csv文件
- 对于爬取回来不干净的数据,或者缺失、错误等,可学习pandas包的基本用法来做数据的预处理。
3.学习scrapy,搭建工程化爬虫
熟知基本的scrapy框架,并学会搭建;
4.学习数据库知识,应对大规模存储和提取
- 目前比较主流的MongoDB;
5.掌握各种技巧,应对特殊网站的反扒措施
- 常规的如访问频率控制、使用代理IP池、抓包、验证码的OCR处理等。
6.分布式爬虫,实现大规模并发采集,提升效率
- 分布式爬虫,即利用多线程的原理,让多个爬虫同时工作,需掌握scrapy+MongoDB+Redis三种工具。
- scrapy用具做基本的页面爬取;
- MongoDB用于存储爬取的数据;
- Redis用于来存储要爬取的网页队列,也就是任务队列;