目录
[1 项目简介](#1 项目简介)
[2 项目背景与应用场景](#2 项目背景与应用场景)
[3 项目整体功能介绍](#3 项目整体功能介绍)
[4 技术路线与开发环境](#4 技术路线与开发环境)
[5 系统功能模块展示](#5 系统功能模块展示)
[5.1 数据采集与数据入库](#5.1 数据采集与数据入库)
[5.2 首页数据分析与可视化大屏](#5.2 首页数据分析与可视化大屏)
[5.3 视频传播表现分析](#5.3 视频传播表现分析)
[5.4 评论文本分析模块](#5.4 评论文本分析模块)
[5.5 登录注册与权限管理](#5.5 登录注册与权限管理)
[5.6 后台数据管理模块](#5.6 后台数据管理模块)
[5.7 协同过滤推荐模块](#5.7 协同过滤推荐模块)
[6 核心算法与实现思路](#6 核心算法与实现思路)
[7 项目运行效果展示](#7 项目运行效果展示)
[8 项目亮点](#8 项目亮点)
[9 项目适用方向](#9 项目适用方向)
[10 总结](#10 总结)
有需要本项目的代码、文档、完整资源,或者需要部署调试的朋友,可以私信博主。
1 项目简介
最近整理了一个围绕 B 站人工智能主题短视频展开的数据分析与推荐系统。这个项目不是单纯做几个统计图,也不是只把爬取到的数据放在表格里展示,而是把"数据采集、数据清洗、数据库管理、可视化分析、评论文本挖掘、后台维护、个性化推荐"串成了一套完整的 Web 应用。系统前期侧重短视频传播规律分析,后期又补充了协同过滤推荐模块,让项目从静态展示进一步变成能够根据用户行为动态调整内容推荐的数据应用。

整个项目选取人工智能相关视频作为分析对象,原因也比较直观:AI 相关内容近几年热度很高,既有技术教程、工具测评,也有行业观点、应用演示和用户情绪表达,比较适合做传播表现分析和评论文本挖掘。系统可以帮助用户从播放量、点赞量、发布时间、视频时长、UP 主表现、评论关键词、情感倾向和主题分布等角度理解内容生态,也可以作为短视频平台数据分析、舆情观察和推荐系统实践的综合案例。

图 1 项目整体流程与功能闭环
2 项目背景与应用场景
B 站的内容生态和普通短视频平台有一些不同,它既有娱乐属性,也有很强的知识社区属性。尤其在人工智能、大模型、AIGC 工具快速发展的背景下,越来越多创作者会在 B 站发布教程、测评、观点解读和案例演示。只看单个视频很难判断整体趋势,人工翻页也很难从大量视频中看出规律,因此这个项目的核心思路就是把平台内容变成结构化数据,再用可视化和算法方法把规律展示出来。
从应用场景看,这套系统可以用于课程设计、毕业设计、数据分析实训、Web 系统开发练习,也可以作为内容运营分析的原型工具。对于创作者来说,可以参考哪些发布时间段更活跃、哪类时长的视频互动表现更好;对于数据分析学习者来说,可以练习从爬虫到数据库再到可视化的完整链路;对于推荐系统入门者来说,新增的用户行为反馈和协同过滤模块也提供了一个比较清晰的实现样例。
3 项目整体功能介绍
系统主要分为数据层、分析层、展示层和推荐层几个部分。数据层负责采集 B 站人工智能主题短视频信息和热门视频评论,并完成去重、字段整理、异常处理和数据库入库;分析层围绕视频传播表现和评论文本展开,包括 UP 主表现、播放热度、点赞率、发布时间、视频时长、标题词云、评论关键词、情感分析和主题模型等内容;展示层基于 Flask 后端和 ECharts/PyECharts 前端图表完成页面集成;推荐层则在原有热门视频展示基础上,增加了用户行为采集和协同过滤推荐。
- 用户端:支持登录、注册、首页浏览、关键词搜索、可视化页面查看、推荐视频浏览和原视频跳转。
- 管理员端:支持视频数据维护、用户管理、权限控制、后台概览和可视化大屏查看。
- 分析模块:支持视频传播指标分析、发布时间分析、UP 主表现分析、评论关键词提取、情感分析和 LDA 主题分析。
- 推荐模块:支持游客热门推荐、登录用户行为记录、点赞收藏评分反馈、相似用户推荐以及热门内容补齐。

图 2 数据采集与评论获取效果
4 技术路线与开发环境
项目整体采用 Python 技术栈完成。数据采集部分使用 Python 请求 B 站相关接口,将视频详情和评论内容整理为结构化数据;数据处理部分主要依赖 Pandas、jieba、SnowNLP、gensim 等工具;可视化部分使用 PyECharts 生成专题图表,同时在 Web 大屏中直接调用 ECharts 完成交互式渲染;后端采用 Flask 组织路由、模板、用户状态和数据接口;数据库采用 MySQL 保存视频、用户和行为数据。
在推荐功能上,系统没有直接把视频列表静态展示出来,而是在已有数据分析系统中新增了用户行为记录和推荐计算逻辑。游客或新用户优先展示热门视频,登录用户产生浏览、点赞、收藏、评分等行为后,系统再根据行为强度构建兴趣得分,进一步寻找相似用户并生成个性化推荐。这样既保证了冷启动阶段页面有内容,也能在行为积累后体现推荐系统的个性化效果。
- 前端展示:HTML、CSS、Layui、ECharts、PyECharts 页面嵌入。
- 后端框架:Flask、Jinja2 模板、蓝图路由、Session 与登录状态管理。
- 数据存储:MySQL 关系型数据库,保存视频、评论、用户与行为数据。
- 数据分析:Pandas 数据处理、统计分析、指标衍生与排序聚合。
- 文本挖掘:jieba 分词、TF-IDF 关键词、SnowNLP 情感分析、LDA 主题模型。
- 推荐算法:热门推荐、用户行为建模、余弦相似度、基于用户的协同过滤。

图 3 短视频分析框架流程图
5 系统功能模块展示
5.1 数据采集与数据入库
数据采集是整个系统的基础。项目通过分析 B 站视频接口,批量获取人工智能主题视频的标题、封面、发布时间、播放量、点赞量、弹幕数、UP 主信息等内容,再对重复数据、特殊字符和时间字段进行统一处理。对于评论分析部分,系统选取高互动视频进行评论采集,把评论文本、发布时间和互动信息整理为后续 NLP 分析可以直接使用的数据格式。
入库时,视频数据和评论数据被拆分保存,便于后台管理和图表接口调用。这里没有把所有逻辑都写死在前端,而是让 Flask 后端通过数据库查询结果返回图表需要的数据,页面刷新时可以重新获取最新统计结果,系统整体结构也更清晰。
5.2 首页数据分析与可视化大屏
首页和可视化大屏是项目展示效果最明显的部分。大屏顶部使用数字卡片展示视频总量、累计播放、累计点赞、平均时长等核心指标,中间区域通过折线图、柱状图、环形图、散点图和滚动表格呈现视频发布趋势、播放变化、UP 主表现、视频时长结构以及热门视频列表。整体界面偏数据驾驶舱风格,答辩或演示时比较直观。

图 4 可视化大屏整体展示

图 5 大屏指标卡片与推荐表模块
5.3 视频传播表现分析
视频分析模块重点观察不同视频和不同创作者的传播表现。系统可以按照播放量、点赞量、弹幕数等指标进行排序,也可以从 UP 主角度统计总播放、平均播放和作品数量。通过这些图表可以看出头部内容的集中效应,也能发现一些播放量不一定最高、但点赞转化比较好的垂直内容。
时间维度分析主要围绕日、周、月发布趋势和具体发布时间段展开。项目把视频发布时间转换为可分析字段后,可以展示不同周期内的内容增长情况,也可以对比白天、晚上、凌晨等时段的视频发布特征。视频时长分析则把内容分为短、中、长等区间,对比不同长度视频的数量占比和传播表现。

图 6 UP 主表现与播放热度分析

图 7 发布节奏与视频时长分析
5.4 评论文本分析模块
评论分析模块主要面向热门短视频的用户反馈。系统先对评论进行分词、停用词过滤和基础清洗,再利用 TF-IDF 提取关键词,生成关键词词云,帮助快速判断评论区讨论的核心内容。情感分析部分使用 SnowNLP 对评论情绪进行打分,并将评论大致分为正向、中性和负向几类,便于观察用户对视频内容和 AI 话题的态度。
为了进一步了解评论区的讨论结构,项目还使用 LDA 主题模型进行主题挖掘,并结合一致性得分选择相对合适的主题数量。最终结果能够把评论区中的"AI 与人类关系""技术替代焦虑""创作价值讨论""娱乐化互动"等话题拆分出来,展示效果比单纯词云更有层次。

图 8 评论关键词、情感分布与负面词云

图 9 LDA 主题分析与一致性得分展示
5.5 登录注册与权限管理
系统设置了普通用户和管理员两类角色。普通用户登录后可以查看可视化页面、浏览推荐内容、进行搜索和行为反馈;管理员则可以进入后台,对视频数据和用户信息进行管理。登录注册模块采用常见的 Web 表单交互方式,页面简洁,适合在项目演示中快速说明权限边界。

图 10 登录注册模块展示
5.6 后台数据管理模块
后台管理模块主要服务于数据维护。管理员可以查看视频数据列表,也可以按照标题关键词检索数据,对记录进行新增、编辑和删除。列表中还保留了跳转到 B 站原视频的入口,方便在分析结果和原始内容之间切换。这个设计让系统不只是展示图表,也具备基础的数据管理能力。

图 11 后台数据维护功能展示

图 12 系统后台与页面集成效果
5.7 协同过滤推荐模块
这次新增的推荐模块,是整个项目升级比较明显的一部分。原来的系统主要做数据分析和热门推荐,推荐逻辑更多依赖播放量、点赞量等平台指标。新增模块后,系统开始关注"当前用户做了什么",把浏览、点赞、收藏和评分等行为记录下来,再根据这些行为判断用户兴趣。
推荐首页采用类似短视频信息流的卡片布局,每个卡片展示封面、标题、UP 主、发布时间、播放量、点赞量和时长等信息。封面图片通过后端中转处理,尽量避免外链加载不稳定的问题。用户点击卡片可以跳转到 B 站原视频,登录用户的浏览行为会被记录下来;在卡片上进行点赞、收藏或评分后,系统也会把行为写入数据库,为后续推荐计算提供依据。
推荐模块没有单独新建一套用户体系,而是复用原系统用户表。游客可以浏览和搜索,但不能产生有效反馈;登录用户可以参与点赞、收藏、评分等交互。行为数据一方面会形成用户当前状态,便于快速计算兴趣分;另一方面会保留明细日志,方便展示行为轨迹,也方便后续做推荐解释。

图 13 协同过滤推荐模块运行逻辑
6 核心算法与实现思路
项目中的算法部分主要分为三类:传播指标分析、评论文本挖掘和协同过滤推荐。传播指标分析以数据库中的视频字段为基础,通过分组统计、排序聚合和衍生指标计算,形成 UP 主榜单、播放区间、点赞率、发布时间段、时长结构等分析结果。评论文本挖掘则先完成分词和清洗,再用关键词提取、情感分析和主题模型把评论内容转化为可视化结果。
推荐算法采用"热门推荐 + 用户协同过滤"的组合方式。新用户或行为较少的用户优先使用热门视频排序,保证页面始终有内容;当用户逐渐产生行为后,系统会把不同类型行为折算为兴趣得分,构建用户---视频偏好矩阵,再用余弦相似度寻找兴趣相近的用户。最后,系统会从相似用户喜欢但目标用户尚未明显互动过的视频中生成候选列表,并按加权得分排序输出。如果协同过滤候选不足,则继续用热门视频补齐。
这样的实现方式适合毕业设计和实训项目:逻辑清楚,代码复杂度可控,能把推荐系统中比较关键的冷启动、行为反馈、兴趣建模、相似用户和结果补齐都展示出来。同时,它也保留了扩展空间,后续可以继续接入基于内容的推荐、标签推荐、深度学习召回或更复杂的排序模型。
7 项目运行效果展示
从实际运行效果来看,系统可以完成从数据导入到页面展示的完整流程。用户登录后可以查看多维分析页面和动态大屏,也可以在推荐首页浏览视频卡片、搜索关键词、点击跳转原视频。管理员进入后台后,可以维护视频数据、管理用户权限,并查看整体概览。评论分析结果以词云、柱状图和主题可视化呈现,比较适合做项目演示。
推荐模块运行后,页面不再只是固定展示热门视频,而是会随着用户行为变化而变化。用户越多、行为越丰富,协同过滤的效果越容易体现。即使当前用户行为较少,热门推荐也能保证系统可用,不会出现推荐页空白的问题。
8 项目亮点
- 功能链路完整:覆盖数据采集、清洗入库、可视化分析、评论挖掘、后台管理和推荐输出。
- 展示效果直观:动态图表、大屏卡片、滚动表格、词云和主题分析结果都适合用于答辩演示。
- 分析维度丰富:不仅分析播放量和点赞量,也加入发布时间、视频时长、UP 主表现和评论文本。
- 推荐模块有闭环:新增浏览、点赞、收藏、评分等行为反馈,让系统具备个性化推荐能力。
- 前后端结构清晰:Flask 路由、模板页面、数据库查询和 ECharts 图表接口分工明确,便于二次开发。
- 扩展空间较大:后续可以继续加入定时采集、多平台数据对比、内容标签推荐和更细粒度情感模型。
9 项目适用方向
这个项目比较适合计算机、软件工程、数据科学、人工智能应用、信息管理等方向的课程设计、毕业设计或综合实训。它同时包含 Web 系统开发、数据库设计、数据分析、文本挖掘和推荐算法几个常见技术点,完整度比较高,也方便根据不同要求进行裁剪。
- 短视频数据分析与可视化系统;
- B 站、抖音、小红书等平台内容分析项目参考;
- Python 爬虫与 MySQL 入库综合实训;
- Flask 后台管理系统开发练习;
- 中文评论情感分析与主题模型实践;
- 协同过滤推荐系统入门项目。
每文一语
数据会说话,关键是把它整理成用户愿意看的样子。