《中国新歌声》、《跑男》、《笑剧总动员》、《笑傲江湖》……现如今,各种综艺节目竞争激烈。哪个节目更受不雅观众欢迎?节目中的“笑点”和 “尿点”又藏在哪儿?歌华有线的“北京大样本收视数据研究中央”给出了答案。这家刚刚成立不久的机构,节制着最热门的“大数据”打算模式,如今正充当起各个电视节目的幕后“智囊”。
节制着用户收视数据的现在不仅仅是歌华,还有我们所熟习的小米(盒子)、乐视(盒子)、华为(盒子)等等,还有我们不太熟习的新科、百视通、创思奇等等,这些机构或者公司通过硬件设备电视机顶盒节制着每个用户的收视数据。
虽然传统的公司或者机构通过电视机顶盒节制着相称一部分用户的收视数据,但是随着互联网视频网站的崛起,越来越多的用户选择通过视频网站收看我们喜好的节目,而且这个比重逐年增加,可以说未来互联网视频网站的用户与传统的机顶盒用户旗鼓相当,乃至超越传统机顶盒用户。
作为一样平常的互联网公司或者个人,如果我们有这个业务需求获取用户的收视数据,那我们该如何做呢?
一样平常有两种路子:一种是跟机顶盒厂商互助拿到用户数据,另一种是跟视频网站互助拿到用户数据。
第一种办法本钱比较高,而且现在机顶盒厂商也比较多,很难获取比较全面的数据,第二种办法同样本钱比较高,视频网站也浩瀚,但是互联网视频网站的数据一样平常暴露给用户,以是我们可以通过爬虫的办法,来获取各大视频网站的用户数据,更经济、更快捷。
近日,大讲台官网上线了一门新课程——《30天搞定大数据爬虫项目》,便是专门用来辅导大数据爱好者在30天内搞定收视率方面的大数据爬虫项目。
项目采取Java措辞实现,基于绝对真实的爬虫项目进行优化和拆解,涵盖爬虫项目完全流程,包括数据爬虫、全文检索、数据可视化、爬虫项目监控、爬虫项目掩护等等。同时,详细先容了如何办理爬虫项目中常常碰着的棘手问题,包括破解网站反爬策略、网站模板定期变更、网站频繁访问IP被封等等问题。
涉及的技能包括,Java、HttpClient、Redis、Solr、HBase、Zookeeper、HighChart、HTMLEmail。
笔者将详细的拆解步骤做了整理:
一、项目背景
1、理解传统广电收视率项目背景
2、用户数据有哪些代价点
3、哪些机构节制这些数据
4、爬虫目标:互联网各大视频网站
二、项目总体需求
1、多维度统计:总播放指数、逐日播放增量、评论数、收藏数、赞、踩
2、数据可视化:节目收视排行榜、多维度指标趋势图
三、难点剖析
1、网站采纳反爬策略
2、网站模板定期变动
3、网站URL抓取失落败
4、网站频繁抓取IP被封
四、系统架构设计
1、总体架构解析
2、数据流向
3、功能模块划分
4、各个模块详细解读
五、技能选型
1、数据采集层
2、数据存储层
3、数据处理层
4、数据展示层
六、支配方案
1、爬虫项目:分布式集群
2、爬虫定时项目:一台做事器
3、爬虫项目监控:一台做事器
4、爬虫可视化:多台做事器
5、Hbase数据库:分布式集群
6、Redis数据库:分布式集群
7、Solr 全文检索:分布式集群
8、Zookeeper 监控:分布式集群
9、Solr 建立索引:一台做事器
10、邮件提醒:一台做事器
七、爬虫代码详尽实现
1、下载、解析视频网站详情页面url,提取关键字段数据
2、抽取视频网站解析规则模板,优化解析代码
3、打通数据爬虫的下载、解析、存储流程
4、采取Hbase存储爬虫数据,详解Hbase宽表和窄表设计以及爬虫项目表的详细设计
5、解析视频网站所有分页url并优化解析实现类
6、利用Queue行列步队存储视频网站所有url,实现视频网站url循环抓取
7、采取高、低优先级行列步队循环抓取视频网站url
8、采取Redis数据库实现url抓取优先级,并支持分布式爬虫
9、采取多线程爬虫,加快爬虫效率
10、定时启动爬虫项目
11、完善爬虫项目、补充抓取关键字段数据
八、全文检索
1、Lucene、Solr、ElasticSearch简介
2、全文检索过程:索引创建和搜索索引
3、办理全文检索的核心问题
4、Solr+Hbase组合提升检索效率
5、Solr 配置详解
6、Solr 安装支配
7、Solr 建立索引
8、Solr 检索视频网站数据
九、数据可视化
1、采取SpringMVC框架编写爬虫Web项目
2、编写Hbase工具类查询Hbase数据
3、编写Solr工具类检索爬虫数据
4、采取Freemarker或者jsp展示页面
5、采取Highcharts插件展示收视指数曲线图
6、打通爬虫全体项目流程,实时查看收视排行榜以及收视指数曲线图
十、项目优化一
1、设置合理的抓取韶光间隔,仿照正常用户访问,降落IP被封概率
2、采取Redis 动态IP库,随机获取IP,随机抓取不同网站数据,降落同一IP对统一网站的访问频率
3、实现分布式爬虫,提高爬虫效率
十一、项目优化二
1、Ganglia、Zookeeper简介
2、详解Zookeeper特性监控爬虫项目
3、完善爬虫项目注册Zookeeper集群
4、编写Watcher监视器监控爬虫项目生命周期
5、集群监控的整体联调
十二、项目优化三
1、监控器监控爬虫项目非常,非常数据插入数据库
2、编写邮件Mail项目扫描爬虫项目非常信息,关照运维职员
3、编写定时器定时实行Mail项目
对hadoop大数据、大数据爬虫项目感兴趣的同学可以加扣扣群,368177130