淘搜索之网页抓取系统分析与实现- 实现&总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了淘搜索之网页抓取系统分析与实现- 实现&总结相关的知识,希望对你有一定的参考价值。


以一淘搜索的crawler为核心展开的分析到此基本结束了,除了django和mysql部分没有涉及,其它部分都进行了test,尤其是围绕crawler,所展开的分析和实现主要有:

1. 分布式crawler与分布式pipeline处理。

使用scrapy+redis实现,用到了scrapy+scrapy-redis。关于自己相关代码也在fork的repo做了探索与实现。

2. javascript rendering content处理。

使用scrapy+webkit+jswebkit+gtk。用到了scrapyjs,但是这是一种非异步阻塞的方式,其它可选splash.

-----------------------------------------------------------------------------------------

今天下午又研究了下scrapy抓取js内容,发现了scrapy+selenium的解决方案,而selenium提供了丰富的api去模拟用户的行为,这样js rendered content的获取就不再话下了。

相关的资料放在收藏夹中。

其实不论是哪种方式,核心都是模拟浏览器和用户的行为。

 

3. 防止被ban策略扩展。

实现了两个可重用组件proxy.py和useragentmiddle.py放在了blog-crawler中。

4.其它

其它关于crawler的研究有的放在了Scrapy专栏中。

 

 

在这个过程中接触到、学到、用到的东西:

主要是对开源框架、项目的学习与深入。怎样根据这些东西定制自己需要实现的功能,怎样在开源项目没有直观example的情况下分析实现自己的example。另外还有很实用的照葫芦画瓢的能力。
最核心的是认真分析doc,从而实现。


其中参考到的文章与PPT,主要来自searchtb.com:

定向抓取漫谈
快速构建实时抓取集群 
一淘网offline系统简介 
一淘网技术简介
Redis内存存储结构分析
淘宝摘星-爬虫(在shareslide上,需FQ)

转载自:http://blog.csdn.net/u012150179/article/details/38227079#t1

以上是关于淘搜索之网页抓取系统分析与实现- 实现&总结的主要内容,如果未能解决你的问题,请参考以下文章

抓取分析网页批量下载评书(上)之搜索有声小说

《新浪微博自动评论软件·设计与实现之关键字搜索篇》

http协议请求实战——get请求示例之抓取百度搜索关键词对应网页信息

Java网络爬虫怎么实现?

Python实例之抓取网易云课堂搜索数据(post方式json型数据)并保存为TXT

论文参考基于Ajax+Lucene构建搜索引擎的设计与实现(源代码+论文)免费下载