众推平台架构——分布式爬虫
来源:互联网 发布:自然语言处理算法简介 编辑:程序博客网 时间:2024/04/29 21:50
分布式爬虫架构
经过新一轮的投票,项目的范围已经基本确定。
大家决定 全力以付,集中攻克“分布式爬虫”。
分布式爬虫架构1
使用队列,即生产者,消费都模式。
由于生产者将规则生成到队列,然后由爬虫集群(消费者)到队列中取规则,然后按优先级等规则进行爬取。
分布式爬虫架构2
类似于webmagic,webmagic的是一个无须配置、便于二次开发的爬虫框架,它提供简单灵活的API,只需少量代码即可实现一个爬虫。webmagic采用完全模块化的设计,功能覆盖整个爬虫的生命周期(链接提取、页面下载、内容抽取、持久化),支持多线程抓取,分布式抓取,并支持自动重试、自定义UA/cookie等功能。
分布式爬虫架构3
分布式爬虫架构3,参考的Cola是一个分布式的爬虫框架,用户只需编写几个特定的函数,而无需关注分布式运行的细节。任务会自动分配到多台机器上,整个过程对用户是透明的。
基于Cola实现的爬虫位于contrib/目录下。目前实现了四个爬虫:
wiki:维基百科。
weibo:新浪微博爬虫。从初始用户出发,然后是其关注和粉丝,依次类推,抓取指定个数的新浪微博用户的微博、个人信息、关注和粉丝。其中,用户微博只获取了内容、赞的个数、转发和评论的个数等等,而没有具体去获取此微博被转发和评论的内容。
generic(unstable):通用爬虫,只需配置,而无需修改代码。目前Cola实现了一个抽取器(cola/core /extractor),能够从网页正文中自动抽取主要内容,即去除类似边栏和底脚等内容。但是,此抽取器目前准确度还不够,效率也不够高,所以需要谨慎 使用。
weibosearch(unstable):新浪微博搜索的爬虫。这个爬虫使用 cola.core.opener.SpynnerOpener,基于spynner实现了一个Opener能够执行JavaScript和Ajax代 码。目前这个爬虫存在的问题是:新浪微博可能会将其识别成机器人,因此有可能会让输入验证码。
wiki和weibo之前有所提及。主要说明generic和weibosearch。
分布式爬虫架构4
设计方式参考hadoop等分布式运算架构。
控制结点类似于hadoop的namenode,工作结点类似于datanode。存储可以根据代理适配到DB或者Mongo集群等。
有想参与的可以一起进来讨论
群号 194338168
想深度参与的加,不想参与的就别往里进了,现在需要的主要是开发和文档两类人。群会定期往出清人! (项目会开源出来)
- 众推平台架构——分布式爬虫
- 企业架构模式——分层
- QT——绘图设备
- SQL必知必会——分组
- 数据备份——PHP
- 犯错的重要性——比尔.盖茨
- 苹果iPad揭秘——参数解释
- sg变形——一堆变多堆
- C++模板元编程——Traits
- gprof——GNU性能分析工具
- Linux进程间通信——管道
- Linux进程间通信——信号量
- coherence学习1——CacheFactory
- 脱机的P2V工具——Disk2vhd
- Smart210 裸奔笔记——Makefile
- Linux性能分析工具——mpstat
- COS图第四弹——鲁鲁修
- 推开云端计算的视窗——微软互联系统部门全球副总裁Robert Wahbe揭秘Azure服务平台
- ******************** 选择结构-if ********************
- Android高效加载大图、多图解决方案,有效避免程序OOM
- ******************* swich-case 语句 *******************
- POWER虚拟化
- 论述RFID与物联网关系(第一次作业)
- 众推平台架构——分布式爬虫
- virsh命令行管理工具
- B - Mr. Kitayuta's Colorful Graph
- 基于Python的安卓图形锁破解程序
- HTML调用QQ服务,在线QQ交谈
- html,jsp里的onclick事件 return false与二重调用
- RFID系统组成及其功能(第一次作业)
- cocos2d-x 3.X (二)创建动起来的精灵
- LeetCode OJ Longest Substring Without Repeating Characters 不重复的最长字串 滑动窗口