当前位置: 首页 > 后端技术 > Python

周杰伦新歌刷QQ,抢20W评论看粉丝怎么说

时间:2023-03-26 17:29:30 Python

9月16日晚,周杰伦最新单曲《说好不哭》发布后在朋友圈发布,着实让一波人哭了一群想听的朋友先是泪流满面,因为QQ音乐直接毁了没想到翻QQ音乐的不是网易云音乐也不是虾米音乐而是周杰伦!周杰伦凭借一己之力成功掀翻了QQ音乐,那么大家听了周杰伦的新歌后有什么感想呢?在这里,我们从QQ音乐中获取了近20万条评论数据,并对其进行分析,看看有哪些有趣的东西。一、数据获取1、请求分析直接在QQ网页版上搜索“说好不哭”,很容易找到单页拉到页面底部,可以看到评论的分页查看按钮。按F12,点击第二页,在请求流中可以看到对应的请求。可以看到两个重要的参数:pagenum和pagesize。复制请求给Postman处理测试发现可以直接获取数据,连Header都不用加。这里我们尽量简化请求参数。最后只需要下面几个参数。对应的代码可以直接从Postman获取。importrequestsurl="https://c.y.qq.com/base/fcgi-bin/fcg_global_comment_h5.fcg"querystring={"biztype":"1","topid":"237773700","cmd":"8","pagenum":"1","pagesize":"25"}response=requests.request("GET",url,params=querystring)print(response.text)这里是获取所有评论的单页评论,只是增加pagenum2.数据分析返回数据中有很多暂时不需要的字段。这里我们只取以下字段对应的用户名、评论时间、评论内容、点赞数{"nick":"丨那一刻将永远消失\"\"","praisenum":1,"rootcommentcontent":"越听越好听!怎么回事!","时间":1568729836,}由于数据量大,我们暂时将数据存入Excel,这样就不用依赖了外部数据库,可以使用Excel对数据进行二次处理,数据存储代码如下:deffile_do(list_info,file_name):#如果不是则获取文件大小os.path.exists(file_name):wb=openpyxl.Workbook()page=wb.activepage.title='jay'page.append(['nickname','time','likes','comments'])else:wb=openpyxl.load_workbook(file_name)page=wb.activeforinfoinlist_info:try:page.append(info)exceptException:print(info)wb.save(filename=file_name)二、数据可视化1、各时间段的评论数。首先,我们按小时间隔汇总评论。由于时间粒度比较小,这里对时间粒度进行一些处理。周杰伦新歌于9月16日23:00准时发布。可以看出,发布后一小时内(23:00-24:00)评论数量达到峰值,占评论总数的一半以上。这真有趣。搬个小板凳坐瓜子的既视感。2.大家都在说什么。生成词云的方法有很多种。您可以使用代码生成它或使用一些在线工具。这里我使用了一个在线词云工具:wordart以后单独给大家科普一下生成效果如下周杰伦杰伦明显有很多“nice”“coming”“crying”“love”之类的词来“签到”的“少年”和“阿信”的出现,想必也让不少人感到意外。3.大家喜欢哪些评论?我们按喜欢的数量对评论进行了排序。热门评论如下。对比一下发布的精彩评论,可以看出和我们得到的数据比较吻合,但是官方的排名并不是按照点赞数来的。可以看出,这些排行榜大多是在追忆青春。这些评论之所以能得到大家的共鸣,或许他们的青春里就有一个周杰伦吧。关注本书,后台回复“2018”,获取传智播客2018最新Python和Java教程。公众号提供CSDN资源免费下载服务!