从爬虫必要的几个基本需求来讲:
1.抓取
py的urllib不一定去用,但是要学,如果还没用过的话。
比较好的替代品有requests等第三方更人性化、成熟的库,如果pyer不了解各种库,那就白学了。
抓取最基本就是拉网页回来。
如果深入做下去,会发现要面对不同的网页要求,比如有认证的,不同文件格式、编码处理,各种奇怪的url合规化处理、重复抓取问题、cookies跟随问题、多线程多进程抓取、多节点抓取、抓取调度、资源压缩等一系列问题。
所以第一步就是拉网页回来,慢慢会发现各种问题待优化。
2.存储
抓回来一般会用一定策略存下来,而不是直接分析,个人觉得更好的架构应该是把分析和抓取分离,更加松散,每个环节出了问题能够隔离另外一个环节可能出现的问题,好排查也好更新发布。
那么存文件系统、SQLorNOSQL数据库、内存数据库,如何去存就是这个环节的重点。
可以选择存文件系统开始,然后以一定规则命名。
3.分析
对网页进行文本分析,提取链接也好,提取正文也好,总之看的需求,但是一定要做的就是分析链接了。
可以用认为最快最优的办法,比如正则表达式。
然后将分析后的结果应用与其他环节:)
4.展示
要是做了一堆事情,一点展示输出都没有,如何展现价值。
所以找到好的展示组件,去show出肌肉也是关键。
如果为了做个站去写爬虫,抑或要分析某个东西的数据,都不要忘了这个环节,更好地把结果展示出来给别人感受。
http://cuiqingcai.com/1052.html
http://blog.csdn.net/pleasecallmewhy/article/details/8923067
基础加实例
一看就会了