斗鱼直播数据分析(二)之爬虫数据分析及可视化

前言

本文基于斗鱼直播数据分析(一)之利用python3爬虫获取数据所爬取的数据进行数据分析可视化,主要是利用SQL进行统计,可视化的显示用的是Echarts

一、查看数据分布情况

SELECT crawl_time, COUNT(*) FROM douyu_crawl_data_etl GROUP BY crawl_time ORDER BY crawl_time;

斗鱼直播数据分析(二)之爬虫数据分析及可视化_第1张图片
数据分布没有问题,每次爬取都爬取了303条数据

二、各时间段观看热度与直播人数分布情况

SELECT DATE_FORMAT(crawl_time, "%m-%d %H:%i") as crawl_time, SUM(play_num) as play_num, SUM(watch_num) as watch_num from douyu_crawl_data_etl GROUP BY crawl_time ORDER BY crawl_time;

这里我们使用DATE_FORMAT只截取%m-%d %H:%i,去除年份和秒数的误差,按爬取时间crawl_time分组,统计每次爬取的观看热度以及直播人数。
斗鱼直播数据分析(二)之爬虫数据分析及可视化_第2张图片
使用echarts进行可视化展示,如下图所示:
斗鱼直播数据分析(二)之爬虫数据分析及可视化_第3张图片
上图可视化源码点击这里

三、22:00时刻 统计游戏观看热度排行榜top10

从上一步我们可以看出22点观看热度为最大值,所以我们去22:00时的数据,来统计观看热度最高的前10个直播频道

SELECT game_name, watch_num from douyu_crawl_data_etl where crawl_time = '2018-08-18 22:00:00' ORDER BY watch_num DESC LIMIT 10;

可视化如下图所示:
斗鱼直播数据分析(二)之爬虫数据分析及可视化_第4张图片
上图可视化源码点击这里

四、按类别统计频道数、直播人数、观看热度

select count(*),classify_name,SUM(play_num), SUM(watch_num) from douyu_crawl_data_etl where crawl_time = '2018-08-18 22:00:00' GROUP BY classify_name;

可视化如下图所示:
斗鱼直播数据分析(二)之爬虫数据分析及可视化_第5张图片
上图可视化源码点击这里

五、三大PC端游观看热度对比

select watch_num,DATE_FORMAT(crawl_time, "%m-%d %H:%i")  from douyu_crawl_data_etl where game_name = 'DNF';
select watch_num,DATE_FORMAT(crawl_time, "%m-%d %H:%i")  from douyu_crawl_data_etl where game_name = '英雄联盟';
select watch_num,DATE_FORMAT(crawl_time, "%m-%d %H:%i")  from douyu_crawl_data_etl where game_name = '绝地求生';

可视化如下图所示:
斗鱼直播数据分析(二)之爬虫数据分析及可视化_第6张图片
上图可视化源码点击这里

六、总结

上面只分析了4个,还有很多维度可以进行分析,有兴趣的可以自行分析。
个人水平有限,有什么问题也欢迎大家在评论区指出。

你可能感兴趣的:(爬虫+数据分析+可视化)