周杰倫《說好不哭呢》QQ音樂評論的可視化分析

作者:皖渝
原文鏈接:https://blog.csdn.net/shine4869/article/details/103224427?utm_source=app
在這裏插入圖片描述

1.數據爬取

python也快學了一個多月了,今天就來分享一下爬取QQ音樂評論的實戰例子吧。以周董的《說好不哭》爲例:

首先打開QQ音樂,搜索說好不哭。翻到評論區後,使用谷歌瀏覽器的檢查功能,找到Network部分進行抓包,發現評論區的內容是被封裝在json中的,如下圖所示:
列表中共包含25個元素,也就是一頁的評論數爲25條。通過分析url可知,pagenum控制着頁數,以for循環即可獲得多頁網址。接下來就通過python來展示具體實現爬取評論的過程:

import requests
import xlwt
import os
import json
os.chdir('..//filepath//')  ##設置工作路徑
workbook=xlwt.Workbook(encoding='utf-8')
worksheet=workbook.add_sheet('說好不哭評論')
worksheet.write(0,0,'暱稱')
worksheet.write(0,1,'時間')
worksheet.write(0,2,'點贊數')
worksheet.write(0,3,'評論')
n=1
for page in range(0,200):
    print('-'*100)
    url_left='https://c.y.qq.com/base/fcgi-bin/fcg_global_comment_h5.fcg?g_tk=792727314&hostUin=0&format=json&inCharset=utf8&outCharset=GB2312&notice=0&platform=yqq.json&needNewCode=0&cid=205360772&reqtype=2&biztype=1&topid=237773700&cmd=8&needmusiccrit=0'
    url=url_left+'&pagenum='+str(page)+'&pagesize=25'
    headers={'User-agent':'Mozilla/5.0'}
    r=requests.get(url,headers=headers)
    data=json.loads(r.text)
    common_comments=data.get('comment').get('commentlist')
    for i in range(0,len(common_comments)):
        worksheet.write(n,0,common_comments[i].get('nick'))
        worksheet.write(n,1,common_comments[i].get('time'))
        worksheet.write(n,2,common_comments[i].get('praisenum'))
        worksheet.write(n,3,common_comments[i].get('rootcommentcontent'))
        n+=1
    print('第{}頁評論爬取完成'.format(str(page)))
    print('-'*100)
workbook.save('common-comments.xls')

這裏爬取的是5000條的普通評論,根據同樣的分析方法,我們還可以爬取到133條熱門評論。最終爬取的數據如下:

熱門評論數據:
在這裏插入圖片描述
普通評論數據:
在這裏插入圖片描述

2.可視化分析

拿到數據後就可以進行可視化分析啦…首先我們先來看一下熱門評論的點贊數隨時間變換的趨勢圖(這裏偷下懶:直接用excel作圖的)
在這裏插入圖片描述
不看不知道,一看嚇一跳…《說好不哭》是9月17日凌晨正式上線的,可在9月14日凌晨已經有人評論了!而且到目前爲止,點贊數最高的三個都是在17號之前發佈的…最高的點贊數更是高達6萬多!

爲啥我寫的評論老是上不了熱評呢?難道是因爲寫的太少了?我篩選了點贊量大於500的評論,清洗了一下文字內容,繪製了點贊數與評論長度的散點圖:
在這裏插入圖片描述
從圖上來看,也並沒有呈現出評論長度越長,點贊量越高的趨勢嘛。不過,在點贊量高於過萬的評論中,明顯字數多的評論個數要多一些。

當然啦,點贊數過萬的評論畢竟還是少數…我們還是來看下熱門評論的整體字數分佈:
在這裏插入圖片描述
從圖上來看,大部分熱門評論的長度還是集中在80左右,還有一部分熱門評論的長度集中於280左右;由此可見,想要上熱門也不一定非要字數多嘛…

我們再來看看大家喜歡什麼時候發評論吧:
首先是熱門評論的:
在這裏插入圖片描述
時間大部分都集中在晚上11點到第二天的凌晨1點之間,這個時間點大家都守着新歌然後單曲循環吧…哈哈

普通評論的呢?
在這裏插入圖片描述
從晚上6點後,評論數逐漸增多,評論數最多的時間段還是分佈在晚上11點至凌晨之間,看來大家都是夜貓子呀…

最後,通過詞雲圖,來看看熱門評論與普通評論所涉及的內容會不會有所不同…(推薦大家一個在線生成詞語圖的工具Wordart)

熱門評論的詞雲圖:
在這裏插入圖片描述
除了人名和歌名外,詞頻較高的詞有"青春"、“喜歡”、“MV”、“阿信”、"奶茶"等,看來當時MV中出現阿信,大家還是很欣喜的…

而普通評論呢?
在這裏插入圖片描述
詞頻較高的詞有"喜歡",“青春”,“好聽”,“小姨”,"唯一"等…令我很疑惑的是,爲啥"小姨"的詞頻這麼高???
在這裏插入圖片描述
本期分享就到這爲止啦,第一次寫博客,還請多多指教~

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