:今天我們來聊聊——B站聯合毛不易釋出的畢業季主題曲《入海》,以及背後不一樣的毛不易。Python技術部分請看第三部分。
Show me data,用資料說話!今天我們聊一聊 毛不易的《入海》,沒錯,還是那個B站,在520這個既浪漫且有營銷價值的一天又「搞事情」了。
5月20日, B站聯合毛不易釋出畢業季主題曲《入海》。這首歌主題是“獻給即將或已經畢業的人們”,歌曲MV中以主人公畢業的時候為原點,追憶過去,並用大量篇幅展現普通人畢業後的社會生活。
這首歌一經發布就在B站引爆了話題點,截止到5月24日在B站播放量達到了800萬 ,收穫了5.2萬彈幕,最高全站日排行1名。
今天我們就帶你來解讀這首《入海》,以及背後不一樣的毛不易。
01、毛不易的歌裡,都喜歡唱些什麼?
毛不易,本名王維家。本來畢業於杭州師範大學護理專業的他一直有個歌手夢。在2017年,參加騰訊影片選秀音樂娛樂節目《明日之子》,獲得全國總決賽冠軍,從而正式進入演藝圈。誰又能想到最後拿到冠軍是這個長相平平,沒有什麼優勢,甚至有點害羞憨厚的毛不易了。
隨著《消愁》《像我這樣的人》等歌曲的大火,毛不易這個名字也被越來越多的人知曉。同時在今年鵝廠的女團選秀節目《創造營2020》中,毛不易更是以導師的身份加入,呆萌的毛老師這次也收穫了不少的粉絲。
聽著《消愁》裡的“一杯敬朝陽,一杯敬月光“,大概是因為才華,毛不易在這個年紀能寫出人生的無奈和糾葛,這是一種大的勇氣。
那麼毛不易的歌裡都在唱些什麼呢?下面讓我們來盤一盤:
我們分析整理了毛不易在網易雲音樂的歌曲,一共83首,歌詞字數加起來45577字,我們用Python對這些歌詞進行分析。
歌曲時長分佈
首先在歌曲時長方面,時長為4-5分鐘的最多高達43.9%,3-4分鐘為29.27%,2-3分鐘的為13.41%。要知道一般歌曲時長多為3分鐘左右,看來毛不易的歌時長還是偏長的。
歌曲正向情感得分
我們使用boson庫對每首歌的歌詞的情感進行打分,分數介於0~100分,高於50分為積極,分數越高,積極傾向性越高。從分佈圖可以看出,在83首歌曲中,大部分的歌曲正向積極情感為主。
毛不易最喜歡的詞TOP15
毛不易最喜歡的歌裡最喜歡用哪些詞呢?我們分析整理得出了歌詞中出現頻率最高的TOP15。可以看到"等待"、"生活"、"時光"等詞出現頻率最高,位列前三。
"慢慢"、"遇見"、"江水"、"角落"等比較文藝的詞也上榜了。有意思的是"有錢"出現頻率也較高,位列第四。
02、《入海》全站日排名第一,這首獻給畢業季的歌好在哪兒?
我們使用Python獲取並分析了B站上《入海》這首MV的評論資料,經過去重之後得到19099條樣本,下面讓我們看到評論的具體分析。
評論使用者性別佔比
首先,在評論使用者性別佔比方面,男性使用者佔比略高,男性使用者佔比54.69%,女性使用者佔比45.31%。
評論使用者客戶端分佈
那麼看《入海》的使用者在看影片時都用的什麼移動裝置呢?經過分析發現,用iphone的使用者佔了很大的比例,遠超Andrio系統的使用者。第三位是使用ipad的使用者。
評論使用者等級分佈
同時我們知道,b站上使用者因為參與程度等因素,等級從0-6分佈,數字越大等級越高。在《入海》這首歌的評論使用者上,評論中5級的佔比最高為36.1%,其次是4級佔比26.31%,6級佔比僅為3.24%,這也是因為畢竟要成為六級大佬實在太難了。
各時段評論人數
在評論時間段方面,《入海》是在5月20日 8:30釋出的,在釋出後評論的人數越來越多,在12點左右評論達到最高峰,這個時段共有2萬7千餘人進行評論,遠高於其他時段,之後隨著時間推移評論人數也越來越少,趨於平緩。
評論關鍵詞TOP15
在評論中大家說得最多的是什麼呢?
經過分析整理可以看到,"畢業"是提到最多的詞,其次第二位是"後浪",畢竟作為同樣聚焦在年輕人身上的話題,這次的《入海》很容易讓大家聯絡到5月4日B站釋出的《後浪》影片。
同時,"快樂"、"入海"、"大哭"等詞也被頻頻提到。
03、Python分析:B站《入海》評論資料
我們使用Python獲取並分析了B站上《入海》這首MV的評論資料。經過去重之後得到19099條樣本,來分析一下這周MV的使用者的評論資訊。整個分析流程分為以下幾步:
資料獲取
在獲取影片評論之前,我們首要做的就是分析其網頁結構,尋找目標資料,也就是我們要評論的資料在哪裡。
經過抓包分析,在network-json選項卡下,很容易找到了資料傳輸的地址,經過分析和精簡,目標資料的url連結為:
https://api.bilibili.com/x/v2/reply?&type=1&oid=795637027&pn=1
其中oid是影片的專屬oid,pn是頁面數。
由上圖可看出,其評論資料是以json資料形式存在於網頁端的,目前顯示的頁數是976頁,每頁20條評論,追評資料暫時不做抓取。
接下來,就爬取思路很明確,從第一頁的JSON檔案開始,爬完20條評論,迴圈pn頁數,直到爬完所有的評論資料。
程式碼如下:
獲取到的資料以DataFrame的形式儲存,格式如下: 資料集有19099個樣本,8個欄位,欄位名稱為:使用者名稱、使用者性別、使用者簽名、使用者等級、使用者評論、裝置名稱、評論時間、點贊數。 資料整理 此處我們主要對以上獲取的資料集進行部分清洗工作以方便後續的處理: 資料視覺化分析 此處我們將進行以下部分的資料視覺化分析,首先匯入所需包,其中pyecharts用於繪製動態圖形,stylecloud用於繪製詞雲圖,關鍵程式碼如下: 評論性別佔比 使用者客戶端分佈 使用者等級分佈 評論時間走勢圖 評論詞雲圖# 匯入包
# 讀入資料
df.info()
<class 'pandas.core.frame.DataFrame'>
# 匯入包
frompyecharts.charts importBar, Pie, Line, WordCloud, Page
# 總體評分分佈
device_num = df.device.value_counts(ascending=True)
# 使用者等級
# 時間資料處理
importstylecloud