作者 |周志鵬,2年數據分析,深切感受到數據分析的有趣和學習過程中缺少案例的無奈,遂新開公眾號「數據不吹牛」,定期更新數據分析相關技巧和有趣案例(含實戰數據集)。
最近《都挺好》真的挺火。
火到什么程度?微博熱搜霸榜,辦公室評彈聲四起,大強輕松攻占表情包,甚至連N年不追劇的瘦宅們也開始沉迷其中,大呼真香。
圖片來源《都挺好》官微
劇很精彩,但追劇界有句俗話說的好:“彈幕往往比劇更精彩”,為了讓精彩延續下去,我終究沒能忍住對(騰訊視頻)彈幕下手。
經過一番折騰,發現彈幕是JSON格式動態加載的,而且加載的非常有規律,30秒一發(80-100條),多出的會隱藏。共計爬取了394452條彈幕(雨露均沾,每集平均8575條,每30S的間隔爬取),來挖一挖彈幕這個寶藏。
1、彈幕基本盤概覽
爬到的源數據是醬紫的:
發現有部分用戶名是缺失的,由于這部分用戶占比很小(僅0.61%),所以我們直接暴力的除去這部分噪聲。
清洗之后,還剩下117484個用戶發送的392051條彈幕,人均發送彈幕量3.34條。
再看看每個人發送彈幕數是怎么樣分布的:
顯而易見,大部分用戶還是比較佛系的,71607位用戶(占比60.95%)在46集中只發送過1條彈幕,他們內心嚴格遵循“愛就一個字,我只發一次”的彈幕發送準則。
發送條數在3條及以內的用戶數占比達到了83.73%,他們累計貢獻了133331條彈幕,占到彈幕總數的34.01%,反過來看,剩下16.27%的用戶貢獻了彈幕量的65.99%。從這個角度來看,二八法則在這里更像是二七法則(20%的用戶貢獻了70%的內容)。
2、是誰在瘋狂發射彈幕,而彈幕又愛上了誰
彈幕發送量TOP10榜單:
我們都知道明成是“行走的造糞機”,那么從彈幕的角度來看,誰是“行走的彈幕發射機”呢?
為此,我們篩選出累計發送彈幕TOP10的用戶:
微微一操作(爬取、清洗和分析都使用PYTHON)
danmu_counts = df.groupby('用戶名')['評論id'].count().sort_values(ascending= False).reset_index()danmu_counts.columns = ['用戶名','累計發送彈幕數']danmu_counts.head(10)br
Emmm,上一步我們知道平均每個人在整部劇會發送3.34條彈幕,而彈幕發送排行榜前十的旁友們發送量都是過千級別的,我們再加上這個用戶彈幕發送涉及到的集數,進一步看看平均每集發送彈幕數。為了更直觀一些,可視化之:
一位名叫"@L"的用戶獨占鰲頭,是毋庸置疑的C位輸出。在46集的電視劇中,他的彈幕血洗了32集,累計發射2773條彈幕,平均每集發送86.66條。
什么概念呢?
一集電視劇時長約42分鐘,也就是說,這位大佬在看劇的同時,仍能保持每分鐘2.06條的發送頻次,還堅持了32集。
到這里大家一定會有質疑,覺得他肯定是刷了大量的“666”、“來了”之類毫無意義的內容來霸榜,所以呢,我把他的輸出內容篩了出來并做成詞云圖:
這,這,這位大佬輸出的內容,不僅緊貼劇情,更是文風多變,時而總結內容,時而嬉笑怒罵,時而感慨人生,時而出口成詩,毫不夸張的說比一般彈幕都要有內涵。
我的膝蓋,開始不聽使喚了......
唯有疾呼“高山(頻)仰止,景行行止”。
誰的彈幕最受青睞(點贊數最多):
根據每個用戶累計點贊量排序,GET到彈幕點贊TOP10排行榜:
第一名“追劇小奶鵝”平均每集發6條彈幕,每條彈幕竟然能夠得到4585個贊!難道這就是傳說中的精神領袖嗎?難道大佬之外還有大佬嗎?
在看劇的時候經常能夠被他的彈幕刷屏,而且他的彈幕比其他人停留時間更長,顏色更艷麗。經核實,發現第一名,原來是嫡系:
騰訊視頻電視劇彈幕專業陪聊,怪不得這么高的贊。
而第二名,又是我們的大佬“@L”,他憑借高頻、穩定、持續輸出累計獲得21.69萬贊,平均每條彈幕獲贊78.22個。
大佬,請收下我的膝蓋!
3、高贊彈幕有何套路:
A)嫡系部隊:
我們單獨把騰訊的嫡系部隊“追劇小奶鵝”拎出來,是因為他幾乎壟斷了高贊彈幕TOP300,嫡系光環加持,贊或許有虛高的嫌疑,但不妨礙我們單獨分析他內容的套路:
(其實不少小奶鵝的彈幕并沒有其他的精彩,但畢竟是親兒子)他的套路暴力總結起來一句話:對仗工整提大強,感天動地夸明玉。
B)非嫡系部隊:
高贊的(非嫡系)朋友們深得演唱會那句帶節奏名言“現場的朋友們,舉起你們的雙手,讓我看到你們的熱情”的真傳。
“覺得XX說的對點下謝謝”、“給XX點贊!”套路是獲贊的一大法寶,另一法寶就是推動劇情的內容總結了。
3、彈幕視角主人公情感分析
誰是蘇家最受彈幕關注的人兒
要分析誰是蘇家最受彈幕關注的人,必須先根據關鍵詞去甄別和定位到劇中角色。
這里列出了關于蘇家人的簡單詞庫,用來識別彈幕在議論誰。
54.31%的彈幕沒有主觀傾向性,沒有提及具體的蘇家人(可能提及了劇中其他人,這里暫不考慮)。
明玉竟然搶過了大強的寶座,以19.91%的彈幕提及率拔得頭籌,而大強則以16.16%的關注度緊隨其后。
Emmm,無論是劇外熱度還是追劇時彈幕槽點,我都覺得大強應該才是最受關注的啊!
作為一個嚴謹的追劇人,我開始排查彈幕,發現了很多戲精在發彈幕時都玩起了角色扮演,他們在發彈幕時,總是先在開頭署名“蘇明玉:”OR其他劇中角色,仿佛在代他們發聲。
清洗完這部分調皮的用戶之后,排名出現了新的變化:
果然,其他除外,大強以15.16%的關注占比領先其他家人一個身位,明玉又把兩個哥哥拉開了一個身位的距離,占比8.82%,明成和明哲關注占比分別是4.84%和4.28%。
PS,明成關注度之所以低,是因為很多彈幕罵人并不會指名道姓:),而明哲嘛,對這個排名表示很失望。
彈幕情感分析
看劇(彈幕)時能夠明顯感覺到觀眾對于明成的態度從最開始的“過街老鼠,人人喊打”到后來的“明成懂事了”。
從數據分析的角度講,明成是否成功洗白?大強最后催淚演繹效果如何?
這里我們調用百度情感分析API,對每一條評價的內容進行情感打分,用情感分值來驗證上述問題(分值在0-1之間,越靠近0負面傾向越強,越接近1則情感越情面)。
調用方法很簡單(只對內容感興趣可以直接略過代碼):
#先安裝aip包from aip import AipNlp#到后臺配置權限,獲得相關ID和KEY,目前API是免費且不限量的app_id = '輸入實際ID'api_key = '輸入實際KEY'secret_key = '輸入實際SECRET_KEY'client = AipNlp(app_id,api_key,secret_key) #定義函數,以便循環爬取def senti_analy(text):data = client.sentimentClassify(text)sentiment = data['items'][0]['positive_prob']return sentiment for text in df['內容']:try:sentiments.append(senti_analy(text))except:#print(text)sentiments.append('pass') df['情感分值'] = sentimentsbr
打分篩選過后,我們統計出每一集蘇家每個人的平均情感分值,并繪制出曲線圖(4個人導致折線圖可讀性較差,所以只有委屈大哥了):
大強開局不錯,和明玉持平,但憑借倪老師“作死小能手”的實力詮釋,讓情感分值迅速走低,11集的低點正式印證了大強的“癲瘋之作”,之后分值在0.38左右徘徊。隨著“蔡根花寶貝”梗的出現,“嘲諷”替代了指責,讓分值略微上浮(情感打分對于高級黑式嘲諷難以準確判斷)。最后老年癡呆發病后大強對明玉的愛讓分值一舉超過0.5,達到歷史峰值,成功上岸。
明玉是原生家庭的受害者,也是一個靠自己成功的女強人,前期愛恨分明,情感分值一度飆到0.59(超過其他所有角色),18集開始的買房紛爭,網友紛紛表示強烈同情(例:明玉不能像十年前一樣別理他們嗎?情感分值只有0.041),這讓明玉相關的情感分值嚴重走低,隨后彈幕主旋律仍以叫好和同情為主。
明成的情感分值走勢更有意思,開局最低,靠欺負妹妹讓分值迅速降低,可謂“人人喊打”,后面分值的飆升,一度追上明玉,主要是因為明成期望值已經極低,但是他寵老婆的行為得到觀眾認可。中期本色挨罵,降至低谷。27集明成情感分值再次超過0.5,竟然是因為明成想嚇走大強進行的一系列騷操作(尤其是廣場舞)。再后來就是明成幡然悔悟,走上正軌,分值在穩定在0.45左右,也算成功洗白。
看來,開局降期望,中期隨便作,后期催淚逆風翻盤,終究還是會被觀眾接受。
-
數據分析
+關注
關注
2文章
1427瀏覽量
34012 -
python
+關注
關注
56文章
4782瀏覽量
84449 -
數據集
+關注
關注
4文章
1205瀏覽量
24641
原文標題:Python爬取394452條《都挺好》彈幕數據,發現彈幕比劇還精彩?
文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論