专栏首页Crossin的编程教室案例|虎扑社区用户行为分析

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

前阵子,一条微博成功引起了我的注意:

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

正好我们也在做网站的数据分析案例,不如就用 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的用户分布散点图(在交互版本上会看得更直观,文末有地址),比较突出的是 张佳玮·信陵(声望最高)、视频综合站(发帖最多)

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

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

另外我们统计了用户声望和等级的前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

本文分享自微信公众号 - Crossin的编程教室(crossincode),作者:Crossin先生

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • #PY小贴士# py2 和 py3 的差别到底有多大?

    昨天的文章里也提到了:python 2 版本将在今年正式停止官方维护。(具体时间上有不同说法,1月1号、4月、8月……但这个差别意义不大了)

    Crossin先生
  • 王校长一分钟能吃多少热狗?| 小游戏

    公元 2018 年 11 月 3 日,王思聪的创办的 iG 战队在《英雄联盟》比赛中以 3:0 的比分击败了 Fnatic 战队,夺得了 LPL 赛区的首个 S...

    Crossin先生
  • 如何在一台电脑上同时使用 Python 2 和 Python 3

    Python 的版本是这几年被开发者诟病的一大槽点,也让众多新手头疼不已。逐渐退居二线的老版本 2 存在不少缺陷但应用广泛,而新版本 3 为了彻底解决历史遗留问...

    Crossin先生
  • 数据分析篇 | 一个虎扑社区数据分析实战

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

    叫我龙总
  • 原生JavaScript第一天

    首先:感谢李炎恢老师的无私奉献 其次:下面的学习总结都是根据李炎恢老师的视频以及参考网络资料编写,转载请注明出处:http://www.0377joyous.c...

    苦咖啡
  • 统一Retrofit失败的处理情况

    Xiaolei123
  • 用户金额的终极解决方案--Redis Lua 顶

    我们在开发各种订单系统的时候都会碰到一个必须面对的问题,用户金额的最终结算。一般我们会把金额存在数据库中,采用行级锁的方式来对金额的变动来进行处理,但是在高并发...

    算法之名
  • cache -- clear( 缓存清除的方法)

    二:清理form表单的临时缓存 方式一:用ajax请求服务器最新文件,并加上请求头If-Modified-Since和Cache-Control,如下:

    小蔚
  • 京东电商推荐系统实践

    说到推荐系统,最经典的就是协同过滤,上图是一个协同过滤的例子。协同过滤主要分为俩种:user-based 基于用户的协同过滤和 item-based 基于商品的...

    石晓文
  • 复习 | HIVE 随机采样②

    当数据量特别大时,对全体数据进行处理存在困难时,抽样就显得尤其重要了。抽样可以从被抽取的数据中估计和推断出整体的特性,是科学实验、质量检验、社会调查普遍采用的一...

    Spark学习技巧

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动