基于大数据技术的bilibili网站数据分析的设计与实现
基于大数据技术的bilibili网站数据分析的设计与实现
Lifeline一、研究背景
哔哩哔哩也被称为Bilibili,简称为B站,于2009年6月创建,其前身为Mikufans视频分享网站,如今是一家是以泛二次元文化爱好者为目标用户的综合类视频弹幕社区和二次元社区。其早期以二次元内容和独特的弹幕分享功能聚集了一批热爱ACG文化的核心用户。随着B站的不断发展,逐渐加入了科技、教育、娱乐、鬼畜等视频内容,在原有视频功能基础上发展了直播、电商等业务。B站的内容品类扩大,用户圈层包含更广,业务也越来越多,逐渐从小众走向大众。B站致力于满足中国Z时代年轻人群的文化娱乐需求,是现在风靡于年轻人之间的视频弹幕网站,同时由于B站广告较少,观看体验极佳,又包罗万象,因此对用户有着不可抵挡的亲和力。
站内共十四个分区,几乎囊括了年轻一代所有的流行需要。从番剧到电竞,从泛知识到电子歌姬,从阿卡贝拉到说唱rap。弹幕狂欢已经成为B站独有的文化现象。
B站的内容主要分为三大类:由up主创作投稿的UGC内容(这也是贡献最多文化狂欢现象的主力部队),由B站出品的自制内容,通过版权购买获得播放权的内容(如电影、番剧等)。作为二次元爱好者的聚集地,作为国内最大的弹幕视频网站,B站的核心竞争力是那些优秀的视频创作者们,也称为up主。Up主所创作的UGC内容是目前的主流内容。
有句话说得好,“也许在B站,你能看到年轻人的复杂”。他们或许一边刷着鬼灭之刃、天官赐福;一边又看着风犬落泪,为说唱呐喊。转头在鬼畜区看《张三犯罪实录》,又会去认真听罗翔讲课,在评论区整理视频知识重点。不要轻易定义年轻人,你们原以为沉迷于娱乐、番剧的人们却可能在B站上学习各种知识。
那么在B站,到底什么类型的视频是最火的?我们又该如何定义视频的“火”呢?up主该怎样提升视频质量呢?我们基于B站全区TOP100排行榜的视频数据展开了我们的分析,通过对B站7天数据及几个知名up主的年度视频数据进行了分析,为up主提升视频热度提供了可行性的建议。
二、数据来源
通过爬取番剧页、纪录片页、国创页、电影页、电视页、综艺页数据进行数据的清洗及数据的分析,主要从以下四个方面去分析每个页面的情况。
1:播放量前五【饼图】
2:播放量前五弹幕占比【柱状图】
3:播放占比【折线图】
4:长短评论的占比【双轴柱状图】
通过以上图表分析可以更好的分析得出用户的行为与喜好,从而更好的去优化网站的视频质量,从而使得用户获得更好的使用体验。
三、实现技术
1、组内前期任务确认
组名 | 成员 | 职责 | 所负责的整体模块/任务 |
---|---|---|---|
无敌暴龙组织部 | 李坤晋 | 组长 | 后端开发 |
无敌暴龙组织部 | 孟凡宇 | 组员 | 前端开发 |
无敌暴龙组织部 | 郝忠文 | 组员 | 数据爬取 |
无敌暴龙组织部 | 李帅辉 | 组员 | 数据清洗 |
无敌暴龙组织部 | 娄晨飞 | 组员 | 图表设计 |
2、图表设计
① 前言
无论是数据展示设计还是工作汇报中,都离不开图表的运用。相较于繁琐的数据内容,用户可以更好更快了解大小、位置、颜色、形状等视觉信息。可视化过后的数据可以加深人们对数据的理解和记忆。
②设计网站:镝数图表 Dycharts:人人可用的零代码数据可视化工具,强大、好用、可定制!
镝数图表 Dycharts 能够快速生成可视化视频、网页交互图表、数据动态图表、数据大屏、矢量图表、信息图表等,只需输入数据即可一键生成。
镝数图表支持近 140种 图表种类,包括词云图、桑基图、玫瑰图、河流图、雷达图等,用户可以根据自己的需求选择合适的图表类型。
镝数图表提供上千种可视化模版,可以帮助用户快速完成内容创作、媒体运营、营销海报、市场研究、论文写作、工作总结、个人简历等场景的可视化设计。比如,可以进行文章配图、内容长图/信息图、海报设计、PPT 设计、简历设计,以及数据大屏。
镝数图表 Dycharts 支持基于 AI 的数据分析和图表处理。目前,AI 分析提供了数据趋势、综合分析、数据对比、维度解释、相关性分析、数据要点、异常识别、分布分析等多种预设指令,辅助用户快速对图表内容进行数据分析。AI 可广泛用于商业分析、个人总结、报告制作、热点讨论、活动传播等需要数据传播的场景。
用户人群:镝数图表 Dycharts 适合那些需要进行数据展示和汇报的职场人士,包括互联网、高校、媒体、电商、金融保险等行业,数据分析、运营、设计、市场销售等职业群体。
访问:镝数图表 Dycharts
③ 图表设计效果图(仅供参考)
1:播放量前五【饼图】
2:播放量前五弹幕占比【柱状图】
3:播放占比【折线图】
4:长短评论的占比【双轴柱状图】
3、数据可视化
数据可视化是一种以图形、表格、图像等形式呈现数据的技术,它可以帮助人们更好地理解和分析数据。以下是数据可视化的发展、简介、特点和优势的简要介绍:
发展:
数据可视化起源于20世纪50年代,当时科学家们开始使用图表来理解和解释实验数据。随着计算机技术的发展,数据可视化技术得到了广泛应用,包括商业智能、数据分析、科学研究和医学等领域。现在,随着大数据时代的到来,数据可视化在各个领域的应用更加广泛,它已经成为了一种重要的技术手段。
简介:
数据可视化是指将大量数据通过图形、表格、图像等形式呈现出来,以帮助人们更好地理解和分析数据。它可以通过计算机软件和工具来实现,也可以手动制作。数据可视化可以展示数据的分布、趋势、关联和异常情况等,从而帮助人们更好地理解数据。
特点:
1:直观性:数据可视化将数据以图形、表格、图像等形式呈现出来,使人们可以直观地看到数据的分布、趋势和关联等。
2:可视化程度高:数据可视化可以展示大量数据,并且可以通过颜色、形状、大小等方式区分不同的数据,使人们可以更清晰地看到数据的分布和趋势。
3:交互性:数据可视化可以通过交互式界面来实现,使人们可以自由地选择要展示的数据和展示方式,从而更好地理解和分析数据。
4:实时性:数据可视化可以实时更新数据,使人们可以及时地了解数据的最新情况。
优势:
1:提高理解和分析能力:数据可视化可以使人们更容易地理解数据,并且可以帮助人们发现数据的隐藏模式和趋势,从而更好地分析数据。
2:提高工作效率:数据可视化可以快速地展示大量数据,并且可以通过交互式界面来实现数据的筛选和分析,从而提高工作效率。
3:增强决策能力:数据可视化可以帮助人们更好地理解数据,并且可以提供更多的信息和视角来支持决策制定。
4:增强沟通效果:数据可视化可以使人们更容易地理解复杂的数据,并且可以通过图表和图像等方式清晰地表达自己的观点,从而增强沟通效果。
4、数据可视化的实现与技术
数据可视化的实现需要多种技术结合,其中最主要的技术包括以下几个方面:
1:数据处理:对原始数据进行清洗、整理和加工,以便用于可视化展示。
2:可视化工具:如D3.js、Tableau、Power BI、山海鲸可视化等数据可视化工具,可以将处理好的数据以图表、地图、仪表盘等形式展示出来。
3:编程语言:如JavaScript、Python等编程语言,可以用于自定义数据可视化的实现,或是在可视化工具上进行自定义操作。
4:数据库技术:对于大数据的可视化,需要使用数据库技术进行数据的存储和管理,如MySQL、MongoDB等。
5:界面设计:良好的用户界面设计可以提升数据可视化的易用性和用户体验。
5、商业数据可视化案例
1:飞瓜数据:飞瓜数据是一款短视频及直播数据查询工具,提供专业、全面的数据分析和运营效果监控服务。
2:罗网数据:罗网数据是一家专注于网络数据收集和分析的科技公司,致力于为客户提供全面的数据解决方案。
3:卡思数据:卡思数据是一家数据科技公司,致力于提供全面的数据分析和智能决策支持解决方案。
4:蝉妈妈数据:蝉妈妈数据是一款提供直播电商数据服务的平台,帮助用户进行数据分析和挖掘,提升直播电商运营效果。
5:飞瓜智投:飞瓜智投是飞瓜数据旗下推出的直播运营系统,为主播团队的直播提供基础IT设施,助力直播带货精细化运营。
6:灰豚数据:灰豚数据是一款短视频直播数据分析工具,帮助用户进行数据分析和挖掘,提升直播电商运营效果。
7:热浪数据:热浪数据是一款针对短视频直播电商的数据分析工具,帮助挖掘数据价值,提升运营效率。
三、数据呈现
前端技术:Vue.js、Vue-router、Vue-cli、Element-ui、eCharts
Vue.js:一个用于构建用户界面的渐进式JavaScript框架。
Vue.js 是一个非常流行的 JavaScript 框架,主要用于构建用户界面。Vue.js主要有一下特征:
1:响应式数据绑定:Vue.js 使用数据劫持和发布订阅模式来实现响应式数据绑定。当数据发生变化时,视图会自动更新。
2:组件系统:Vue.js 的另一个关键特性是组件系统。组件是自定义元素,用 Vue 实例或另一个组件实例化并管理。组件可以扩展 HTML 元素,封装可重用的代码。
3:模板语法:Vue.js 使用基于 HTML 的模板语法,允许你声明式地将已存在的 DOM 绑定至 Vue 实例的数据。所有 Vue.js 的模板都是合法的 HTML,所以可以被遵循规范的浏览器和 HTML 解析器解析。
4:客户端路由:Vue.js 通过 vue-router 提供了客户端路由功能。你可以定义路由规则并将其映射到组件,然后你可以通过 URL 来导航到不同的页面。
5:状态管理:Vuex 是 Vue.js 的状态管理模式和库。它提供了一种集中存储来存储所有组件的状态,并且规定了一些规则保证状态以一种可预测的方式发生改变。
构建工具:Vue.js 配合诸如 webpack 这样的构建工具可以更好地管理和组织你的代码,提供诸如代码分割、热模块替换等特性。
6:服务端渲染:虽然 Vue.js 主要被视为一个客户端 JavaScript 框架,但它也可以用于服务端渲染。这使得搜索引擎优化(SEO)更容易,因为搜索引擎通常不能很好地理解 JavaScript。
7:插件系统:Vue.js 的插件系统允许你通过注册全局组件、混入、自定义指令等方式来扩展 Vue。
集成其它库:你可以很容易地将 Vue.js 与其他 JavaScript 库或框架集成,例如与 Bootstrap 或 jQuery 一起使用。
8:性能优化:Vue.js 在内部使用虚拟 DOM 和 diffing 算法来最大限度地减少重新渲染次数,使得应用运行得更快。
Vue.js 提供了一个灵活的方式来构建用户界面,无论是简单的单页面应用还是复杂的单页应用框架都可以使用它。
Vue-router:Vue.js官方的路由管理器,用于构建单页面应用。
1:安装和配置:首先,你需要在项目中安装 Vue-router,然后,在项目中配置路由规则。
2:三种模式:Vue-router 提供了三种模式:hash 模式、history 模式和 abstract 模式。
3:路由映射:在 Vue-router 中,你可以通过路由映射将路由规则映射到组件。
4:嵌套路由:Vue-router 支持嵌套路由,可以通过嵌套路由来构建更复杂的页面结构。
5:全局前置守卫:Vue-router 支持全局前置守卫,可以在路由变化前执行一些操作。
6:懒加载:Vue-router 支持懒加载,可以将一些不常用的组件在需要的时候才加载,从而提高页面加载速度。
7:导航守卫:Vue-router 支持导航守卫,可以在路由变化时执行一些操作,例如权限验证等。
8:编程式导航:除了配置式导航外,Vue-router 还支持编程式导航,可以通过编程方式来控制页面的跳转。
9:滚动行为:Vue-router 支持自定义滚动行为,例如在页面跳转时禁止滚动、恢复滚动等。
10:性能优化:Vue-router 通过虚拟 DOM 和 diffing 算法来最大限度地减少重新渲染次数,使得应用运行得更快。
Vue-cli:Vue.js的命令行工具,用于快速创建和管理Vue.js项目。
Vue-cli 是一个基于 Node.js 的命令行工具,用于快速创建、构建和管理 Vue.js 项目。它提供了一系列的命令和功能,帮助开发者快速搭建项目、管理依赖、构建应用等。Vue-cli 主要有以下核心功能和特点:
1:项目脚手架:Vue-cli 使用项目脚手架来生成项目的基本结构和配置。它提供了多种模板供开发者选择,可以根据不同的项目需求选择合适的模板来生成项目结构。
2:插件和功能:Vue-cli 集成了大量的插件和功能,例如热模块替换(HMR)、代码压缩、路由、状态管理等。开发者可以根据需要选择所需的插件和功能来扩展项目。
3:开发服务器:Vue-cli 提供了开发服务器,可以在本地开发时实时预览和调试项目。开发服务器支持热模块替换(HMR),可以在修改代码后即时生效,无需手动刷新页面。
4:构建和打包工具:Vue-cli 提供了构建和打包工具,可以将项目打包成可以在不同环境中运行的静态资源文件。它支持 Webpack 和其他构建工具,可以根据项目需求进行自定义配置。
5:自动化测试和部署:Vue-cli 提供了自动化测试和部署的功能,可以通过命令行或配置文件来自动化测试和部署项目。它支持自动化运行单元测试、端到端测试等,并可以将项目部署到不同的环境中。
版本控制:Vue-cli 使用版本控制来管理项目的版本,可以通过命令行或配置文件来控制项目的版本。它支持多种版本控制工具,例如 Git、SVN 等。
6:自定义配置:Vue-cli 允许开发者自定义配置来满足不同的项目需求。它提供了多个配置选项,例如端口号、环境变量、自定义插件等,可以让开发者根据项目需求进行个性化配置。
Vue-cli 是一个功能强大的 Vue.js 开发工具,可以快速搭建、开发和构建 Vue.js 项目。
Element-ui:基于Vue.js的一套高质量的UI组件库。
Element-Ul是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库,手机端有对应框架是Mint UI 。
1:基于Vue.js开发:Element-ui与Vue.js深度集成,有优秀的版本适配性。
2:组件丰富:Element-ui提供了表格、表单、布局、通知、导航等众多组件。
3:设计风格简洁、现代:Element-ui的组件主要遵循Material Design设计规范,采用扁平化的风格,具有清晰、直观的视觉效果。
4:功能和特性丰富:Element-ui提供了一套完整的国际化方案,支持多种语言的切换;提供了一套灵活的主题定制能力;还提供了一套插件机制和扩展能力。
ECharts:使用纯JavaScript编写的开源可视化库,可以生成丰富的交互式图表。
ECharts是一款基于JavaScript的数据可视化图表库,提供直观、生动、可交互、可个性化定制的数据可视化图表。
1:灵活性: ECharts使用JavaScript开发,具有很高的灵活性和可定制性,可以轻松创建各种类型的图表和图形。
2:直观性: ECharts的图表类型丰富,包括折线图、柱状图、饼图、散点图等,可以直观地展示数据,易于理解和分析。
3:交互性: ECharts支持用户交互,可以通过鼠标悬停、点击等操作获取更多数据信息,提高用户体验。
4:个性化: ECharts支持高度个性化定制,可以自定义图表的样式、颜色、标签等,满足不同用户的需求。
5:跨平台: ECharts兼容当前绝大部分浏览器,可以在PC和移动设备上流畅运行,为用户提供优质的数据可视化体验。
后端技术:Node.js、Express、Python
Node.js:一个运行在服务器端的JavaScript运行环境,用于构建网络应用。
Node.js是一个开源的、跨平台的、用于服务器端和网络应用的运行环境。它可以让JavaScript代码在服务器端运行,使得开发者能够快速地搭建网络服务。
Node.js是由Ryan Dahl在2009年创建的,最初是为了在服务器端运行JavaScript代码。它的核心库包括文件系统(fs)、HTTP、路径(path)、查询字符串(querystring)等,这些库全部使用事件驱动、非阻塞I/O模型编写而成。
Node.js的特点包括:
1:异步和事件驱动:Node.js的所有API都是非阻塞的,它基于事件驱动的架构设计,使得其高度的异步和非阻塞I/O可以进行高效的并发操作。这意味着Node.js可以处理大量并发连接,而且每个连接都只使用很少的内存,这使其成为实时应用程序(如聊天、游戏等)的理想选择。
2:单线程:Node.js采用了单线程模型,虽然JavaScript在服务器上只运行在单线程中,但由于Node.js的事件循环和非阻塞I/O操作,使得并发操作变得容易处理。
3:跨平台:Node.js可以在多种平台上运行,包括但不限于Windows、Mac OS X、Linux等。
4:使用JavaScript:由于Node.js使用的是JavaScript语言,这使得前端开发人员可以使用同一种语言在服务器端进行编程,这极大地提高了开发效率并减少了开发人员需要掌握的编程语言种类。
在Node.js社区,可以找到许多高质量的库和工具,例如Express.js(一个帮助你构建web应用的框架)、Mongoose(一个用于处理MongoDB数据库的库)、Less(一个CSS预处理器)等等。
Express:一个基于Node.js的快速、简洁的web开发框架。
Express是一个基于Node.js的Web应用程序框架,它提供了一个简单而灵活的API,帮助开发者快速构建高效、可靠的Web应用和API。Express基于事件驱动和非阻塞I/O模型,使其具有高效的事件处理和并发能力,非常适合处理大规模的并发请求。
Express的主要特点包括:
1:简单快速:Express的API简洁明了,易于学习和使用。它提供了许多中间件,用于处理HTTP请求和响应,使得开发Web应用变得非常快速和简单。
2:灵活性强:Express的设计理念是“约定优于配置”,它提供了一些默认的约定和规则,但同时也允许开发者根据项目的需求进行定制和扩展。
3:功能强大:Express内置了强大的中间件,用于处理路由、模板渲染、会话管理、安全验证等功能。此外,还有丰富的第三方中间件和库,用于处理各种不同的需求。
4:高效稳定:Express基于Node.js平台,充分利用了Node.js的事件驱动和非阻塞I/O模型,使得Web应用能够高效地处理大量并发请求。
5:社区活跃:Express有着活跃的社区和支持,有大量的开源项目和使用案例可以参考和使用。这也意味着开发者可以很容易地找到相关的文档、教程和问题解答。
总之,Express是一个功能强大、灵活易用、高效稳定的Node.js框架,适用于构建各种类型的Web应用和API。
Python:一种广泛使用的编程语言,常用于后端开发。
Python是一种解释型、交互式的编程语言,它具有简单易学、代码可读性高、应用广泛等特点,被广泛应用于Web开发、数据分析、人工智能等领域。以下是Python的简介和特点:
简介:
Python由Guido van Rossum于1989年创造,是一种通用的编程语言,旨在让开发者能够快速编写高质量的代码。Python采用解释型,无需编译器,可以直接运行代码。Python的语法简洁清晰,易于学习,而且具有丰富的第三方库和框架,可以用于构建各种类型的应用程序。
特点:
1:简单易学:Python的语法简洁易懂,开发者可以快速上手编写代码。同时,Python的社区提供了大量的学习资源和教程,使得开发者可以轻松地学习和掌握Python编程。
2:代码可读性高:Python的代码风格简洁明了,易于阅读和理解。这使得开发者可以更容易地协作和分享代码,也使得代码更易于维护和修改。
3:应用广泛:Python被广泛应用于Web开发、数据分析、人工智能等领域。它具有丰富的第三方库和框架,可以满足不同领域的需求。
4:强大的社区支持:Python有一个庞大的开发者社区,提供了大量的开源项目、教程和问题解答。这使得开发者可以很容易地找到相关的资源和支持。
5:跨平台兼容性:Python可以在不同的操作系统上运行,包括Windows、Linux和Mac OS等。这使得开发者可以轻松地在不同的平台上开发和部署应用程序。
1 | 在Python中,有许多库可以帮助我们进行数据清洗。接下来,我们将使用Python进行 |
四、研究分析
五、总结
通过以上分析我们可以看出,B站目前的主流分区为游戏区和生活区,符合当代年轻人的文化娱乐需求。同时,B站知识区良好的生态,正在源源不断地吸引着越来越多的专业人士加入,分享自己专业领域的知识。在B站成立那一天,没人能想到它还能作为一个学习网站所存在。而B站独有的弹幕和三连文化,使得视频发布者和观众之间情感维系更为强烈。视频发布者容易获得成就感,普通用户容易获得身份认同感。正是由于这样的强连接,越来越多的年轻人愿意到B站看视频,也有越来越多的年轻人愿意进驻到B站成为一名up主。
对于up主而言,要想使自己的视频受到更多人的关注,最重要的还是视频的质量,视频的时长与用户是否喜欢无关,重要的是能否激起用户的积极反馈,发送弹幕。而如果想要在B站后台的算法中获得高分登上排行榜,让用户慷慨投币是最为重要的。
一千个用户眼中有一千个B站,二十个不同的兴趣分区保证再偏门的内容创造者都有可能在B站走红。相比其他的在线视频网站,B站各个分区的流量分发较为均匀,功能发挥性更强,这也使得不同兴趣偏好的用户都能在B站观看各自喜欢的内容。要是有新的up主想要进驻B站,也不必迎合大众的口味,可以在自己喜欢的领域内尽情施展自己的才华,总会有爱好相同者为他/她摇旗呐喊。总而言之,B站用户有自己独有的行为特点,对于新的up主来说,如果选对板块并且持续产出高质量内容,有很大可能在短时间内积攒起可观人气。
时至今日,哔哩哔哩的用户已经覆盖年轻群体,除了最初的ACG,内容生产模式以及相关视频业务也都有涉及,产品本身的功能也非常完善,探索出的商业模式也初现成果。从B站目前的不断扩张的行动来看,它的最终目标是要发展成为一个大型综合性社区,最初的用户因为觉得初心不再而离开B站,也无可厚非。面对现如今越来越多“忘了初心”的质疑声和弹幕低龄化趋势、视频质量走低的问题,对于B站而言,关注用户需求、保持用户高活跃度、留住老用户,才是最重要的。