微信公众号原文链接

今年夏天各电视和视频平台同步播出了许多音乐综艺节目,包括热度较高的《乐队的夏天》、《明日之子》、《声入人心》、《我是唱作人》、《中国新说唱》、《中国好声音》等。

以下是这几档节目来自豆瓣的评分,乐队的夏天以唯一8分以上的高分位居第一,我是唱作人 7.6,明日之子6.5,声入人心6.1,中国好声音5.3,中国新说唱5.2分。

小笨聪偶然听到几个女孩在谈论《明日之子》这档节目,比较好奇,就想着爬取一下《明日之子》的评论和弹幕,看看大家都在说什么东东。

一.评论及弹幕数据获取

腾讯视频为《明日之子》的播放平台,我们知道爬取视频类评论及弹幕数据一般有固定的格式,最重要的是获取视频 videoID 以及存放评论或弹幕的文档,以便找到它们对应的编号。

在谷歌浏览器下打开视频播放地址,向下滑动几页加载评论,使用开发者工具(F12)在源代码中即可看到 commentid,这里需要使用抓包工具。原理为找到并复制 url 地址,并一直循环到下一个存放评论的 id,这样就可以获取评论。

Headers 是查看自己浏览器中的 cookies,弹幕在腾讯视频中存放在多个叫 danmu 的 js 中,还需要使用到时间间隔,大概同上评论获取的方法。

1  # -*- coding: utf-8 -*-
2  import urllib.request
3  import re
4  import urllib.error
5  import sys
6  non_bmp_map = dict.fromkeys(range(0x10000, sys.maxunicode + 1), 0xfffd)
7  headers=("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36     (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36")
8  openr = urllib.request.build_opener()
9  openr.addheaders = [headers]
10 urllib.request.install_opener(openr)
11 commentid= '6555778066593331820'
12 url = "https://video.coral.qq.com/varticle/4005898499/comment/v2? callback=_varticle4005898499commentv2&orinum=10&oriorder=o&pageflag=1&cursor="+commentid+"&scorecursor=0&orirepnum=2&reporder=o&reppageflag=1&source=132&_=&_=1564890413257"
13 for i in range(0, 100):
14    data = urllib.request.urlopen(url).read().decode()
15    patnext = '"last":"(.*?)"'
16    nextid = re.compile(patnext).findall(data)[0]
17    # print(nextid)
18    patcom = '"content":"(.*?)",'
19    comdata = re.compile(patcom).findall(data)
20    for j in range(0, len(comdata)):
21        print("---第"+str(j)+"条评论内容是:")
22        print(eval('u"'+comdata[j]+'"').translate(non_bmp_map))
23    url = "http://video.coral.qq.com/filmreviewr/c/upcomment/0dfpyvfa7tp0ewe?commentid=" + nextid + "&reqnum=3&callback=jQuery1124028619190818429263_1528385498744&_=1528385498747"
24    # print(url)

本文获取了《明日之子》第1-10期以及先导片的评论及弹幕共10w 多条,下面将对这些文字展开各方面分析(数据分析代码见文末)。

二.数据分析及可视化

1.关注度最高的是谁?

大多数人在发表看法时都会带自己喜欢支持的明星或选手名字,这也给出了一个很好的分析点,在分析出的词频TOP排序中筛选出排列前16的人名,其中包括了导师及选手。当然大家在讨论明星或选手涉及到一些别名,以下都是将这些名字归整后的数据,如华晨宇有花花、大哥,张钰琪有船长、大侠等别名。

其他还有一些出现错别字的情况也进行了合并。出现频率越高的人名其拥有的别称也越多,还有几个人都被称作大哥,如花大哥、山支大哥、苏大哥等。

上图可见华晨宇以8707词频的绝对优势占领讨论热度第一,当然这也与近几年他参加不少节目涨了很多粉丝有关。

而选手中讨论度第一的毫无疑问是5981词频的张钰琪(总决赛最强厂牌),讨论热度选手前4分别为张钰琪、By2、洪一诺、冯希瑶。

2.粉丝们爱说些什么评论?

在10w 条数据中使用python进行词频统计并输出前200词语,剔除人名后截取前面部分数据,发现每个人口中最频繁出现的词语都是一些非常正面积极的词语。 如喜欢、加油、可爱、好听、支持、实力等。但仍然很少出现与音乐相关的词语,大部分为与选手本身相关的。以下图右上角为词频,粉色区域面积也代表了出现的总频次。

(以上背景图来自明日之子官方造型,与词频分析无关)

将出现词频 TOP200 的词语制作成词云图如下,人名出现概率较高,其他形容的词语都较为积极正向。词云轮廓使用了明日之子水晶时代的图标。

3.当提及名字的时候,粉丝们都在说什么?

以下筛选出几位讨论度较热的名字,包括6位导师及6位选手,制作专属人名的词云,看看大家围绕他们都在讨论什么。

数据发现,提及 By2 时的词语有舞蹈、优秀、心疼,Veegee 为特别、适合,冯希瑶有支持、好听,洪一诺为风格、打动、复古,苏北北为苏哥、搞笑,张钰琪为支持、超级、期待。

华晨宇为可爱、点评、演唱会,龙丹妮为老板、龙姐、点评,毛不易为矜持、害羞、巨星,孟美岐为山支、啊啊啊、好看,宋丹丹为老师、花花、音乐、搞笑,孙燕姿为唱歌、女神、专业。

但总体各位选手讨论的热词有些没有太大变化,都和总体的讨论热词类似,也没有特别凸显选手的特点。

4.观众情感分析如何?

对所有数据进行情感分析,使用 python 的中文情感分析包 SnowNLP 输出情感值,其中分值在0-1之间,越靠近0表示情感越消极,越靠近1说明情感越积极。

并绘制了如下频率分布直方图。可见观众的情感是压倒性的偏向积极情感,当然也有部分消极情感的意见。

在大致分析了各个演员与每一集的情感之后发现并无太大变化,都偏向积极情感。

以下将情感分值低于0.1的部分评论和弹幕筛选出来做成了词云图,即看那些消极评论都在说什么。

可以看到,有些消极评论在吐槽腾讯视频的问题,有一些则是各家粉丝互怼的部分,还有关于节目对选手的问题被指责。

当然,节目好与坏都存在呼声和骂声,一档节目决定面向大众就意味着,不仅节目还包括里面的选手都面临被斥责的风险,尤其是最近火热的音乐类节目。但还是呼吁大家文明观看,不要以随意吐槽作为乐趣。

以上就是本次爬取《明日之子》评论和弹幕并可视化分析的过程。微信公众号“学编程的金融客”后台回复“明日之子”即可获取源码。【完】

微信公众号原文链接

往期推荐

1.爬取流浪地球影评

2.北上广深租房图鉴

3.大学排行榜可视化

4.爬取抖音视频

5.母亲节祝福代码

你的点赞和关注就是对我最大的支持!

Python爬取《明日之子》(腾讯视频)评论和弹幕,看看大家都在吐槽什么相关推荐

  1. 用Python爬取B站、腾讯视频、芒果TV和爱奇艺视频弹幕

    众所周知,弹幕,即在网络上观看视频时弹出的评论性字幕.不知道大家看视频的时候会不会点开弹幕,于我而言,弹幕是视频内容的良好补充,是一个组织良好的评论序列.通过分析弹幕,我们可以快速洞察广大观众对于视频 ...

  2. Python爬取京东书籍信息(包括书籍评论数、简介等)

    Python爬取京东书籍信息(包括书籍评论数.简介等) 一. 工具 二. 准备爬取的数据 三. 内容简述 四. 页面分析 (一) 寻找目录中商品所在标签 (二) 寻找页面中能爬取到的所有数据 (三) ...

  3. 使用Python爬取中国Mooc网讨论区内所有评论

    最近受朋友委托,写了一个爬取中国Mooc往讨论区所有评论的程序 ,他需要这些数据写论文. 如下: 他需要爬取这些板块里所有的评论. 俗话说的好 六月七月爬虫热 因为这段时间许多的大学生都毕业了 特此写 ...

  4. python爬取B站up主全部视频封面

    B站up主的点赞投币转发等信息,以及弹幕文件.评论文件等等都可以调用特定的API接口来获得. python爬取B站弹幕.绘制词云等点击下方链接 https://blog.csdn.net/weixin ...

  5. Python爬取京东iphone8的异步加载评论

    运行环境 Python 3.X 寻找评论信息地址 我们打开京东商城,搜索iphone8 iphone8虽然买不起,但是看看也欢迎 我们点击进去查看详情 往下翻,找到商品评价,点击 不仅有评论,而且还有 ...

  6. 超细致通用,python爬取豆瓣游戏短评——以王者荣耀评论为例

    超细致通用,爬取豆瓣游戏短评--以王者荣耀评论为例 写在前面 一.介绍 二.步骤 1.观察 1.1网页结构 1.2网页层次逻辑 2.准备 2.1引入库 2.2获取html文件并且解析 3.选取 3.1 ...

  7. 用python爬取《龙岭迷窟》评论,制作词云,看看与《盗墓笔记》的区别在哪里

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 本文章来自腾讯云 作者:Python进阶者 想要学习Python?有问题得不到第一 ...

  8. 用python爬取《龙岭迷窟》评论,看看比同系列鬼吹灯作品以及《盗墓笔记》好在哪里?

    大家好,我是朱小五 最近不知道大家发现没有,新出了几部国产好剧,其中小五比较喜欢的就是鬼吹灯系列的<龙岭迷窟>. 自从开播以来,获得好评无数,豆瓣评分开播8.4分,目前有所回落,维持在8. ...

  9. 用python爬取《龙岭迷窟》评论,看看比同系列鬼吹灯作品以及《盗墓笔记》好在哪里?...

         作者:朱小五      来源:凹凸数据 最近不知道大家发现没有,新出了几部国产好剧,其中小五比较喜欢的就是鬼吹灯系列的<龙岭迷窟>. 自从开播以来,获得好评无数,豆瓣评分开播8. ...

  10. Python爬取网易云音乐1万条评论

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:刘早起 PS:如有需要Python学习资料的小伙伴可以加点击下方链接 ...

最新文章

  1. python创建图片对应的csv格式_Python:如何从csv文件创建图形节点和边?
  2. C/C++ 语言中的表达式求值
  3. SpringBoot+Swagger2.7进行接口测试后台无法获取请求参数
  4. boost::endian::endian_load的测试程序
  5. 局域网聊天软件 设计文档怎么写?
  6. android接推流sdk,Android——直播推流SDK
  7. python字典value排序_python字典按照value排序方法
  8. java中类的方法分为 类方法_Java中类的方法成员分为()方法和实例方法。
  9. Android SDK下载网址
  10. 【Bandit Algorithms学习笔记】EXP3算法理论证明
  11. OCR文字识别技术总结(一)
  12. 新手建站必看,怎么选择主机空间?
  13. HTML CSS JS 网页设计作业「我的家乡吉林」
  14. AndroidStudio项目配置第三方libray库
  15. 微信小程序 | 小Demo_学生资讯 | 系统性学习 | 无知的我费曼笔记
  16. 浏览器显示无法解析服务器的DNS地址,搜狗浏览器无法解析服务器的DNS地址怎么解决...
  17. 移动硬盘上安装操作系统
  18. 为了让5G更省电,这家设备商秀出黑科技
  19. intval()和(int)转换使用与区别
  20. 点亮LED灯驱动编写过程

热门文章

  1. 模型汇总-9 Variational AutoEncoder_VAE基础:LVM、MAP、EM、MCMC、Variational Inference(VI)
  2. 第一次在OJ上写个a+b简直弱爆了。。。。
  3. PPT设置自动保存时间 mac_PPT又崩溃了?教你如何恢复文档
  4. 2022年词达人竞赛笔记
  5. uni.showToast与uni.navigateTo同时使用问题
  6. Tapestry入门
  7. 外派linux运维,请好好善待你身边的Linux运维工程师,因为他们...
  8. Vue3 组件示例工程(二) —— AQI组件
  9. html和jsp轮播,jsp页面、图片轮播
  10. Excel中SEARCH函数的使用方法