ITPub博客

首页 > 数据库 > 数据库开发技术 > 案例|虎扑社区用户行为分析

案例|虎扑社区用户行为分析

原创 数据库开发技术 作者:Crossin的编程教室 时间:2019-10-15 13:51:05 0 删除 编辑
前阵子,一条微博成功引起了我的注意:


没想到你竟是这样的虎扑!


正好我们也在做网站的数据分析案例,不如就用 Python 来分析下,虎扑你这个直男论坛到底是怎样的?


    数据来源    


这个案例我们几个月前就有计划了,所以数据是之前采集的。


时间:2019.3.16-2019.6.22
(虎扑论坛只显示近三个月的帖子)


数据:
板块内容:共 101.4w 个帖子的概要数据
帖子内容:回复数大于 200,浏览数大于 5w 的 4.4w 个帖子
用户页面:29.9w(详细帖子数据中发帖回帖用户),其中 10w 有效数据(剩余 17.6w 未填写,1.4w 填地球)


说明一下,我们这里不可能获取到虎扑的全部数据,但作为一个抽样统计已经足够。其中帖子的详细内容由于请求量很大,我们就选取了其中回复和浏览都比较高的那部分帖子作为分析样本。


接下来就让我们来看一看详细的数据情况:


    板块    



虽然虎扑名义上是个篮球论坛,但步行街(无主题闲聊区)的帖子占据了半壁江山。对比之下很悲凉的是中国足球论坛,基本没啥话题。



虽然主题数不如步行街,但看平均回帖数,篮球论坛还是名副其实。


    发帖    



看每天日间发帖时间的分布,两个高峰:上午10点(上班摸鱼)和晚上21点(吃过饭躺床上)。上午高峰还有个原因,就是NBA比赛都是这个时间段转播的。



这是3个月来每天发帖总数的变化趋势,看得出在稳步上升。知道曲线上为啥会有定期的波峰吗?通常都是精彩比赛场次的日子。图上3个峰值的日子分别对应:火箭vs勇士、猛龙vs勇士、勇士vs猛龙 三场比赛。


热门帖子的浏览与回帖数分布。可以看出一个现象:浏览量大的贴,回帖数通常也很高;但回帖多的帖就未必都会有高浏览量(高回帖低浏览的基本都是抽奖贴)。


    用户    



尽管有一半以上的用户没有在资料里选择性别,但从填写的这部分用户来看,直男论坛实锤没跑了。



这是一张声望>8000的用户分布散点图(在交互版本上会看得更直观,文末有地址),比较突出的是 张佳玮·信陵(声望最高)、视频综合站(发帖最多)


而从这张注册/在线时长的用户分布图上可以看到,“视频综合站”的在线时长却是很少的,可见这应该不是一个真人号。


从用户注册时间上来看,每年的新增用户都在上涨,2014 和 2017 年是虎扑增长较快的两年。


另外我们统计了用户声望和等级的前50排行,声望最高:张佳玮·信陵,等级最高:登等瞪等凳。图略,可详见动态图表演示页面。


    地区    



东部和南部沿海省市 JRs 的数量比较多,另外就是北京和四川。



全球范围来看,美国要远高于其他国外地区。(这里为了国外区域显示效果而降低了颜色范围,实际美国的用户和国内差了2个数量级)



各地区用户的平均在线时长,上海 JRs 最能肝。不过,平均数是可能被一些个别用户把数据拉高的,所以我们还加了中位数的统计,可以看到湖南的233是最高。



等级中位数,又是湖南第一。



声望中位数,还是湖南。



发帖中位数,依然是湖南……



回帖中位数,不用我说,你们猜到是哪里了吧?


    词云    


最后,我们来看下虎扑 JRs 这三个月的帖子中频率最高的词汇是什么(可点击查看大图):
    项目介绍    


回到技术层面,关于这个项目的实现,简单说下思路:


项目思路
  1. 分析虎扑论坛页面,评价可获取数据,确定分析目标;

  2. 使用了 requests 和 scrapy 抓取相应数据, 并使用 pymongo 保存;

  3. 使用可视化工具 pyecharts,对数据进行可视化处理。

  4. 整理分析。


运行环境
  • python 3.7

  • windows 10

  • jupyter notebook


运行依赖包
  • requests

  • pyecharts

  • pymongo

  • scrapy

  • jieba

  • wordcloud


关于项目的详细说明,我们放在了开发文档里,连同交互演示页面一起提交在了 github 上。需要源码的同学可在公众号(Crossin的编程教室)里回复关键字 虎扑


原始数据因为较大,没有放在项目中,参与“码上行动”的同学如果想要拿来练习数据分析,可以在群里问助教索要。


查看交互演示页面也可把此地址复制到浏览器里访问,这是github在线渲染HTML页面的功能 (数据量大,在线加载会有点慢,手机流量慎入):
https://htmlpreview.github.io/?https://raw.githubusercontent.com/spiderbeg/hupu_data/master/hupu_html/one_piece_plates.html 


对此类分析感兴趣还可看下之前的案例:
B站用户行为分析非官方报告

本文代码由实训生 清风小筑 完成





其他内容回复左侧关键词获取:
python :零基础入门课程目录
新手 :初学者指南及常见问题
资源 :超过500M学习资料网盘地址
项目 :十多个进阶项目代码实例

如需了解视频课程及答疑群等更多服务,
请号内回复 码上行动
经验:选专业 | Py转行 | 我用Py | 新手建议
干货:如何debug |  一图学Py  | 知乎资源 | 单词表
案例:漫威API | 查天气 | 监控大V | 红包提醒



欢迎加入
Crossin的编程教室
crossincode.com

请把我们分享给身边爱学习的小伙伴 :)  


☟点击文末“阅读原文”,了解Python零基础学习小组

原文作者:Crossin的编程教室;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2015-06-05

  • 博文量
    498
  • 访问量
    200511