hadoop基于Python对b站热门视频的数据分析与研究(源码+文档+调试+可视化大屏)

204 篇文章 11 订阅
15 篇文章 0 订阅

收藏关注不迷路!!

🌟文末获取源码+数据库🌟

感兴趣的可以先收藏起来,还有大家在毕设选题(免费咨询指导选题),项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人


前言

  随着互联网技术不断地发展,网络与大数据成为了人们生活的一部分,而对B站热门视频的数据分析与研究作为网上应用的一个全新的体现,由于其特有的便捷性,已经被人们所接受。目前主流的对B站热门视频的数据分析与研究服务不仅不明确并且管理盈利较低,针对用户定制的对B站热门视频的数据分析与研究更能够体现出其服务特色。
本项目以对B站热门视频的数据分析与研究为研究背景,采用的框架为 Django和python开发了对B站热门视频的数据分析与研究。本文通过分析对B站热门视频的数据分析与研究的需求,建立起了相关的开发模型,构建出相关的系统需要的开发环境。通过调研,明确了对B站热门视频的数据分析与研究的需求,最后开发实现了系统并进行了测试。

详细视频演示

文章底部名片,联系我看更详细的演示视频

一、项目介绍

开发语言:Python
python框架:Django
软件版本:python3.7/python3.8
数据库:mysql 5.7或更高版本
数据库工具:Navicat11
开发软件:PyCharm/vs code
前端框架:vue.js

二、功能介绍

当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到对B站热门视频的数据分析与研究的导航条显示首页、排行榜、通知公告、投诉举报、个人中心等

该章节的功能模块设计,只是大概描述了系统的所有功能模块,将功能按权限来讲解。系统总体结构图如图4-7所示。
在这里插入图片描述

图4.7 系统总体结构图

三、核心代码

部分代码:


def users_login(request):
    if request.method in ["POST", "GET"]:
        msg = {'code': normal_code, "msg": mes.normal_code}
        req_dict = request.session.get("req_dict")
        if req_dict.get('role')!=None:
            del req_dict['role']
        datas = users.getbyparams(users, users, req_dict)
        if not datas:
            msg['code'] = password_error_code
            msg['msg'] = mes.password_error_code
            return JsonResponse(msg)

        req_dict['id'] = datas[0].get('id')
        return Auth.authenticate(Auth, users, req_dict)


def users_register(request):
    if request.method in ["POST", "GET"]:
        msg = {'code': normal_code, "msg": mes.normal_code}
        req_dict = request.session.get("req_dict")

        error = users.createbyreq(users, users, req_dict)
        if error != None:
            msg['code'] = crud_error_code
            msg['msg'] = error
        return JsonResponse(msg)


def users_session(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code,"msg":mes.normal_code, "data": {}}

        req_dict = {"id": request.session.get('params').get("id")}
        msg['data'] = users.getbyparams(users, users, req_dict)[0]

        return JsonResponse(msg)


def users_logout(request):
    if request.method in ["POST", "GET"]:
        msg = {
            "msg": "退出成功",
            "code": 0
        }

        return JsonResponse(msg)


def users_page(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code, "msg": mes.normal_code,
               "data": {"currPage": 1, "totalPage": 1, "total": 1, "pageSize": 10, "list": []}}
        req_dict = request.session.get("req_dict")
        tablename = request.session.get("tablename")
        try:
            __hasMessage__ = users.__hasMessage__
        except:
            __hasMessage__ = None
        if __hasMessage__ and __hasMessage__ != "否":

            if tablename != "users":
                req_dict["userid"] = request.session.get("params").get("id")
        if tablename == "users":
            msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
            msg['data']['pageSize'] = users.page(users, users, req_dict)
        else:
            msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
            msg['data']['pageSize'] = [],1,0,0,10

        return JsonResponse(msg)


数据库参考


--
-- Current Database: `pythonxdpl44x6`
--

/*!40000 DROP DATABASE IF EXISTS `pythonxdpl44x6`*/;

CREATE DATABASE /*!32312 IF NOT EXISTS*/ `pythonxdpl44x6` /*!40100 DEFAULT CHARACTER SET utf8mb4 */;

USE `pythonxdpl44x6`;

--
-- Table structure for table `57cj988c_paihangbang`
--

DROP TABLE IF EXISTS `57cj988c_paihangbang`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `57cj988c_paihangbang` (
  `id` bigint(20) NOT NULL DEFAULT '0' COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `title` varchar(200) CHARACTER SET utf8 DEFAULT NULL COMMENT '标题',
  `pic` longtext CHARACTER SET utf8 COMMENT '封面',
  `location` varchar(200) CHARACTER SET utf8 DEFAULT NULL COMMENT '发布位置',
  `author` varchar(200) CHARACTER SET utf8 DEFAULT NULL COMMENT 'up主',
  `playcount` bigint(20) DEFAULT NULL COMMENT '播放量',
  `danmucount` int(11) DEFAULT NULL COMMENT '弹幕数',
  `type` varchar(200) CHARACTER SET utf8 DEFAULT NULL COMMENT '类型',
  `duration` int(11) DEFAULT NULL COMMENT '视频时长',
  `pubdate` varchar(200) CHARACTER SET utf8 DEFAULT NULL COMMENT '上传时间',
  `laiyuan` varchar(200) CHARACTER SET utf8 DEFAULT NULL COMMENT '来源',
  `likecount` int(11) DEFAULT NULL COMMENT '点赞量',
  `replycount` int(11) DEFAULT NULL COMMENT '回复数'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;


--
-- Table structure for table `chat`
--

DROP TABLE IF EXISTS `chat`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `chat` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `userid` bigint(20) NOT NULL COMMENT '用户id',
  `adminid` bigint(20) DEFAULT NULL COMMENT '管理员id',
  `ask` longtext COMMENT '提问',
  `reply` longtext COMMENT '回复',
  `isreply` int(11) DEFAULT NULL COMMENT '是否回复',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8 COMMENT='投诉举报';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `chat`
--

LOCK TABLES `chat` WRITE;
/*!40000 ALTER TABLE `chat` DISABLE KEYS */;
INSERT INTO `chat` VALUES (31,'2024-03-01 06:55:54',1,1,'提问1','回复1',1),(32,'2024-03-01 06:55:54',2,2,'提问2','回复2',2),(33,'2024-03-01 06:55:54',3,3,'提问3','回复3',3),(34,'2024-03-01 06:55:54',4,4,'提问4','回复4',4),(35,'2024-03-01 06:55:54',5,5,'提问5','回复5',5),(36,'2024-03-01 06:55:54',6,6,'提问6','回复6',6),(37,'2024-03-01 06:55:54',7,7,'提问7','回复7',7),(38,'2024-03-01 06:55:54',8,8,'提问8','回复8',8);
/*!40000 ALTER TABLE `chat` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `config`
--

DROP TABLE IF EXISTS `config`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `name` varchar(100) NOT NULL COMMENT '配置参数名称',
  `value` varchar(100) DEFAULT NULL COMMENT '配置参数值',
  `url` varchar(500) DEFAULT NULL COMMENT 'url',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='配置文件';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `config`
--

LOCK TABLES `config` WRITE;
/*!40000 ALTER TABLE `config` DISABLE KEYS */;
INSERT INTO `config` VALUES (1,'picture1','upload/picture1.jpg',NULL),(2,'picture2','upload/picture2.jpg',NULL),(3,'picture3','upload/picture3.jpg',NULL);
/*!40000 ALTER TABLE `config` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `discusspaihangbang`
--

DROP TABLE IF EXISTS `discusspaihangbang`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `discusspaihangbang` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `refid` bigint(20) NOT NULL COMMENT '关联表id',
  `userid` bigint(20) NOT NULL COMMENT '用户id',
  `avatarurl` longtext COMMENT '头像',
  `nickname` varchar(200) DEFAULT NULL COMMENT '用户名',
  `content` longtext NOT NULL COMMENT '评论内容',
  `reply` longtext COMMENT '回复内容',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='paihangbang评论表';
/*!40101 SET character_set_client = @saved_cs_client */;

四、效果图

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

五、文章目录

目 录

摘 要 I
Abstract II
1 引 言 1
1.1 研究背景 1
1.2 研究意义 1
1.3 研究现状 1
1.4 研究内容 2
1.4 论文架构 2
2 相关工具及介绍 3
2.1 Python语言 3
2.2 hive简介 3
2.3 Django框架简介 3
2.4 hadoop技术 3
2.5 Spark 4
3 数据采集与分析 5
3.1 数据采集 5
3.2 可行性分析 5
3.2.1 经济可行性研究 5
3.2.2 技术可行性研究 5
3.2.3 社会可行性 6
3.2.4 法律可行性分析 6
3.3 功能需求 6
3.3.1 用例概述 6
3.4 非功能需求 8
4 数据分析 9
4.1 环境部署 9
4.2 数据预处理和分析模块设计 10
4.3 数据可视化模块设计 10
4.4 数仓功能设计 11
4.4.1 顶层设计 11
4.4.2 分层规划 11
4.4.3 整体流程 12
4.5后端功能设计 13
4.5.1 顶层设计 13
4.5.2 具体模块设计 13
4.6前端功能设计 14
4.3.1 顶层设计 14
4.3.2 布局设计 15
4.7 功能模块设计 15
5 数据可视化 16
5.1 数仓功能实现 16
5.2 前台用户功能的实现 20
5.3 后台管理员功能的实现 23
5.4 对B站热门视频的数据分析与研究看板展示 25
6 总结与展望 26
参考文献 28
致 谢 29

六 、源码获取

下方名片联系我即可!!


大家点赞、收藏、关注、评论啦 、查看👇🏻获取联系方式👇🏻

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值