9 万条弹幕告诉你,谁才是《乘风破浪姐姐》里的真正 C 位!

公众号关注 “GitHubDaily”

设为 “星标”,每天带你逛 GitHub!

作者 | Mika

出品 | CDA 数据分析师(ID:cdacdacda)

今天我们来聊聊最近火到不行的综艺 ——《乘风破浪的姐姐》,Python 分析弹幕部分请看第四部分。点击下方视频,先睹为快:

如果说最近最热门的综艺,那《乘风破浪的姐姐》(下文简称《姐姐》)可谓实至名归。

30 位出道多年的姐姐辈女艺人,一个个风格各异、个性鲜明。她们将通过合宿生活与舞台竞演,最终选出 5 位组成逆龄女团。

《乘风破浪的姐姐》就这样突然定档、突然播出、播出前无宣发的情况下爆了,一经播出就抢占各大热搜榜。

今天,我们带大家就用数据来盘一盘这些姐姐们:

主要从以下几点展开:

  • 乘风破浪的姐姐?NO!是兴风作浪的姑奶奶

  • 出道时长十年起,这些姐姐们都有谁?

  • 豆瓣 8.3 分,姐姐们的实力妥妥的

  • Python 分析 9 万条弹幕,谁才是真正的 C 位?

乘风破浪的姐姐?

NO!是兴风作浪的姑奶奶

 

既然是选最特别的女团,哪些人参加自然是关注的焦点。宁静、伊能静、钟丽缇、张雨绮、万茜、黄圣依… 光是听到这些选手的名字就让人太期待了!

姐姐们很 “任性”

不同于一般的女团选秀,漂亮妹妹们都得听从节目组的安排,而这次的姐姐们普遍很 “不服管教”,毕竟都是在自己领域出道多年的资深前辈,她们非常有底气,知道自己想要什么。

节目组让做自我介绍,宁静霸气的回复:“还要介绍我是谁?那我这几十年不是白干了?”

节目组导演让伊能静挡一下膝盖,伊能静说:“这是裤子,我挡不了。你配合我一下,别让我配合你们”。

问万茜为何来参加节目,万茜回答:“经纪人逼我来的”。这也太真性情了吧,简直不是乘风破浪的姐姐,而是兴风作浪的姑奶奶们呀。

端水大师 —— 黄晓明

这些姐姐们,也让在中餐厅里 “我不要你觉得 我要我觉得” 的霸道总裁黄教主秒变暖心的小明同学 ——“我不要你觉得,我要您觉得” 人送称号端水大师,满满的求生欲。

凭实力挨骂 —— 杜华

在点评环节中,作为评审之一杜华也是各种凭实力挨骂。依然以评选 20 多岁女团的刻板标准评价姐姐们,让不少观众都看得满头问号,越看越气。

 

出道时长十年起,唱跳演样样精通

姐姐们到底有多强?

 

下面让我们看到数据部分。我们搜集了百度百科和维基百科的选手数据。

姐姐们年龄分布

先看到年龄分布,可以看到 29-33 这个年龄段的姐姐最多共有 11 位,占比 36.67%。其次是 34-37 岁,共 10 位,占比 33.33%。

姐姐们都来自哪儿?

然后是地区分布,姐姐们都来自哪里呢?其中来自湖南和上海的最多,各有五位。阿朵、万茜、刘芸、沈梦辰、孟佳都是我们湖南湘妹子。然后四川、辽宁、山东的各两位。

姐姐们都是哪些职业

在职业方面呢,我们可以看到,她们大多数演员和歌手出身,艺人中身兼数职的情况比较普遍,30 人中至少有 17 人身兼多职,其中 13 人既是演员、也是歌手。

初舞台得分的关键因素

《乘风破浪的姐姐》初评分数由个人特质、成团潜力、声乐表现力和舞台表现构成,每项 25 分,总分 100 分。

我们通过 Python 计算数值型变量之间的 pearson 相关系数。对于系数 r 的取值,根据经验可将相关程度分为以下几种情况,|r|>=0.8 时,可视为高相关,0.5<=|r|<0.8,可视为中度相关,0.3<=|r|<0.5 时,可视为低度相关,|r|<0.3,可视为不相关。根据相关系数数值,在 95% 的置信程度水平情况下:

控制其他影响因素的情况下,个人特质打分对初舞台分数的影响最大。

  • 初评舞台分数和年龄、出道年数没有显著相关关系。

  • 年龄和个人特质、成团潜力的分数间存在低度负相关关系,年龄越大,个人特质和成团潜力的得分也就越低;

  • 个人特质和成团潜力的打分之间存在高度正相关,即两者得分存在高则同高,低则同低的情况。

豆瓣 8.3 分,姐姐们的实力妥妥的

 

目前这部综艺在豆瓣的评分为 8.3 分,很不错的成绩,已有 7 万 2 千余人进行评价。

豆瓣总体评分分布

看到具体评分分布,给出四星的最多,为 38.2%;其次是 5 星 占比 25%。看来观众普遍还是十分认可姐姐们的表现的。

短评词云图

可以看到词云主要围绕的是 "姐姐"、"节目"、"女团" 展开。其中在需选手中宁静、万茜被提到的频率最高。

当然也有不少吐槽的点,大家的吐槽主要集中在:

  • 评委杜华:不公平;30 + 的女性岁月积淀了魅力,评审却按照 20 岁女团的标准来;给丁当打分真是要气炸。

  • 黄晓明:从霸道总裁秒怂变小明,让人感觉尴尬不已

  • 节目组:场景布置令人寒酸,摄影差,灯光差,布景差。

也有吐槽选手的

  • 黄圣依:等黄圣依淘汰了我再改成五星,谢谢。

 

Python 分析 9 万条弹幕 

谁才是真正的 C 位一姐?

 

我们统计了芒果 tv 第一期的弹幕数据,共 94575 条。

下面展示芒果 Tv 弹幕爬虫部分代码,分析部分代码暂略。数据获取的具体思路如下:

  1. 分析网页,弹幕数据是动态加载的,因此通过 Chrome 浏览器进行抓包分析并获取真实的 URL 请求地址;

  2. 使用 selenium 请求网页数据;

  3. 使用正则表达式 re 将文本中的 HTML 提取出来,使用 json 进行解析;

  4. 使用 pandas 进行数据的保存。

一、弹幕在哪里找?

打开《乘风破浪的姐姐》选取一集,观看我们要抓取的弹幕,可以看出弹幕是在视频播放之后才滚动加载的,所以我们可以判断视频是通过 JS 异步加载的。

按照经验,我们切换到 network-XHR 下面查看,如下图所示,很容易发现了弹幕请求的地址:

https://bullet-ws.hitv.com/bullet/2020/06/21/104556/8337559/0.json

其中:2020/06/21 代表日期,104556 和 8337559 参数每集不一样,通过抓包获取即可。

二、获取并解析数据

具体代码如下:

# 导入包
import pandas as pd
import time
import re
import json
from selenium import webdriver

# 打开Chrome(需配置webdriver)
browser = webdriver.Chrome()

def get_mgtv_danmu(month_num, day_num, num1, num2):
    step = 1
    df_all = pd.DataFrame()

    while True:
        try:
            # 第一集URL
            danmu_url = 'https://bullet-ws.hitv.com/bullet/2020/{}/{}/{}/{}/{}.json'.format(month_num, day_num, num1, num2, step)

            # 打印进度
            print('正在获取第{}页的信息'.format(step))
            step += 1
            # 获取弹幕
            browser.get(danmu_url)

            # 休眠3秒
            time.sleep(3)

            # 提取数据
            pattern1 = re.compile(r'<html><head></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">')
            pattern2 = re.compile(r'</pre></body></html>')

            data1 = re.sub(pattern1, '', browser.page_source)
            data2 = re.sub(pattern2, '', data1)

            # 解析数据
            js_data = json.loads(data2)

            # 获取数据
            all_data = js_data['data']['items']

            # id
            danmu_id = [i.get('id') for i in all_data]
            # uname
            uname = [i.get('uname') for i in all_data]
            # 内容
            content = [i.get('content') for i in all_data]
            # 时间
            danmu_time = [i.get('time') for i in all_data]
            # 点赞
            up_count = [i.get('v2_up_count') for i in all_data]
            # 分钟
            danmu_minites = step-1

            # 保存数据
            df_one = pd.DataFrame({
                'danmu_id': danmu_id,
                'uname': uname,
                'content': content,
                'danmu_time': danmu_time,
                'up_count': up_count,
                'danmu_minites': danmu_minites
            })

            # 循环追加
            df_all = df_all.append(df_one, ignore_index=True)

        except Exception as e:
            print(e)
            print('没有此页面, 爬虫结束')
            break

    return df_all

if __name__ == '__main__':
    # 
    df_1 = get_mgtv_danmu(month_num='06', day_num='21', num1=104556, num2=8337559)

获取的数据以数据表的形式存储,如下所示:

df.head()

结论部分

选手弹幕热度排名

在排名数据上,占据前四位的分别是宁静、万茜、吴昕和张雨绮。

下面,分别看到她们的个人弹幕词云图。

宁静 - 弹幕词云

喜欢宁静的,都喜欢她那种强大的大姐大气场,感觉静姐这哪里是来出道当女团的,明明是来选妃的。

万茜 - 弹幕词云

再看到万茜,淡雅的性格配上努力勤奋换来的过硬实力,在节目里,万茜也堪称人气王,除了观众爱她,姐姐们也都爱她。关于她的弹幕都是各种 "喜欢"、"可爱"、"性格圈粉" 等等。

吴昕 - 弹幕词云

吴昕这次在节目中给了人眼前一亮的感觉,不再是快乐家族中没啥台词的小透明,从用心准备的节目,到谈吐性格都让人感觉十分舒服,非常圈粉。

张雨绮 - 弹幕词云

最后再看到张雨绮,她真的是反差萌担当了,以为是高冷霸总,结果却是个可爱憨憨,从赛前采访就开始搞笑。带来的节目是《粉红色的回忆》,理由是这是自己唯一能唱完的歌,也是十分可爱了。

结语:

这么多个性十足的姐姐们真是让人爱了爱了,特别是《乘风破浪的姐姐》的开场旁白,非常让人印象深刻:

三十而励!三十而立!三十而骊!

30 岁以后,人生的见证者越来越少,但还可以自我见证!

30 岁以后,所有的可能性不断褪却,但还可以越过时间,越过自己!

不要轻易用年龄定义自己,只要有追逐梦想的心,无论什么年龄段都有属于自己的精彩!

《乘风破浪的姐姐》数据 + 代码:

链接: https://pan.baidu.com/s/12XsJ-GrzagDU3LdI5nrsOA

提取码: ywv8

---

由 GitHubDaily 原班人马打造的公众号:GitCube,现已正式上线!
接下来我们将会在该公众号上,为大家分享优质的计算机学习资源与开发者工具,坚持每天一篇原创文章的输出,感兴趣的小伙伴可以关注一下哈!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章