Python爬取爱奇艺腾讯视频 250,000 条数据分析为什么李诞不值得了
off999 2024-12-30 06:07 21 浏览 0 评论
在《Python 爬取爱奇艺 52432 条数据分析谁才是《奇葩说》的焦点人物?》这篇文章中,我们从爱奇艺爬取了 5 万多条评论数据,并对一些关键数据进行了分析,由此总结出了一些明面上看不到的数据,并将其直观地展现了出来,数据分析的妙处即在于此。
最终,我们从《奇葩说》的词云图中得出了李诞是为焦点人物的结论。但有小伙伴留言说道:“李诞是焦点人物,但那都是在骂他的”,看到这个笔者突然意识到,说着“人间不值得”的李诞《吐槽大会》开始声名鹊起,一方面是入了娱乐圈已成明星,却也饱受非议,作为《吐槽大会》第三季和《奇葩说》第五季的关键人物,我们是不是可以进行情感分析,从数万条的用户评论里找出广大观众眼中的李诞,以及主打辩论的奇葩说和以“吐槽文化”为切入点的《吐槽大会》的异同之处?
如何进行情感分析?
文本情感分析,又称为意见挖掘、倾向性分析等。简单而言,是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。
奇葩说的评论信息表达了人们的各种情感色彩和情感倾向性,通过对他们进行分析来了解大众舆论的看法。
在这里,我们使用“SnowNLP”进行分词和情感分析。
奇葩说的情感分析数据
注:本文中使用的奇葩说数据是上篇文章爬取的数据,数据文件地址:
https://github.com/Pinned/ICanIBBData/blob/master/deal_data.db
先来看一下《奇葩说》的整体情感分析得分数据:
奇葩说情感分析
从上图可以看出来,正向情感的评论数要多于负向评论的数据,可见观众朋友还是喜欢奇葩说的。
好多人都说李诞是在被人骂,所以笔者在此对评论中包含李诞的数据进行了过滤(作者注:这样来看不一定准确,但也能从一个角度来看大体的数据情况),做了一下情感分析,先看图:
有关李诞评论的情感分析
从这张图可以看出来,得分 0.5 以下的评论要比 0.5 分的多得多。其实单看李诞的这张图,对于负向情感评论是多是少没有直观的感受。于是,笔者又把剩下出现频率比较高的薛教授与詹青云的情感评分画了两张图,对比感受了一下:
薛教授评论情感分析
詹青云评论情感分析
通过这三张图的对比,感受到不一样的情感了吗?薛教授和詹青云的正向情感要远高于负向情感,而李诞的正向和负向两类情感则处于趋同状态。
详细代码为:
def emotionParser(title, *names):
conn = conn = sqlite3.connect("deal_data.db")
conn.text_factory = str
cursor = conn.cursor()
likeStr = ""
for i in range(0, len(names)):
likeStr = likeStr + " or content like \"%" + names[i] + "%\" "
if likeStr == "":
sql = "select content from realData where content != \"\" "
else:
sql = "select content from realData where content != \"\" " + likeStr
print sql
cursor.execute(sql)
values = cursor.fetchall()
sentimentslist = []
for item in values:
content = item[0]
senValue = SnowNLP(content.decode("utf-8")).sentiments
sentimentslist.append(senValue)
print content
plt.hist(sentimentslist, bins=np.arange(0, 1, 0.01), facecolor="#4F8CD6")
plt.xlabel("Sentiments Probability")
plt.ylabel("Quantity")
plt.title("Analysis of Sentiments for " + title)
plt.show()
cursor.close()
conn.close()
观众朋友对李诞的负面情感有些高,那对他的评论具体究竟呈现着什么样的态势?接下来我们按如下步骤进行具体分析:
- 将评论数据中包含李诞、李蛋、蛋蛋的数据单独查出来;
- 使用 Jieba 对评论数据分词;
- 使用 WordCloud 生成词云分析数据生成词云图见下图,有关代码请参考《Python 爬取爱奇艺 52432 条数据分析谁才是《奇葩说》的焦点人物?》 。
《奇葩说》评论李诞的数据词云
从上面的关键词中可以看出,观众对于李诞的情感词云偏于负面,譬如“讨厌”、“教养”、“礼貌”、“打断”等。
吐槽大会的情感分析
- 爬取腾讯评论数据
用 Chrome 打开腾讯视频,打开 《吐槽大会》视频播放,然后打开 Chrome 查看源代码模式,在网络请求里面搜索并过滤 comment。通过过滤拿到的请求地址中,你能拿到一个 videocommentid 的请求,里面有该期评论的 id。
本次笔者爬取了《吐槽大会》的三季数据,每一期的评论数据的 id 都是手动去获取的。
- 数据分析
从所获取的 18w+ 的评论数据中,包含李诞的数据条数有多少呢?直接使用 SQL 在数据库中查找:
select count(*) from dealInfoDatabase where content like "%李诞%" or content like "%李蛋%" or content like "%蛋蛋%" or content like "%诞总%";
李诞评论数据条数
没有想到的是,在这 18w 的数据中,居然只有 8000 多条数据。毕竟同样是每一期人员都非常多的综艺节目,在《奇葩说》5w 多条数据中就有 1w 多条与李诞相关,但结果到李诞成名的《吐槽大会》上却远远不足,值得我们思考。
回归正题,我们再来看一下,在每一期的评论数量:
在第一季第十期,也就是收官之作里关注度特别大,应该是有一次不错的表现。
- 情感分析
首先来看一下,全部评论数据的整体情感分析,可以看到,整体的正向情感要多于负向情感。
李诞所有数据的情感分析
再来看看所有评论中,评论词云是怎么分布的。如下图,可以看出,很多人都非常喜欢他。
吐槽大会-李诞词云
再来看一下每一季的数据, 第一季的数据可以看出,正向情感要多于负向情感,更多的观众是喜欢他的。
李诞第一季数据
笔者也把第二季的数据跑出来,可以看出,正向情感与负向情感趋于持平,是不是表示,讨厌他的观众数量在增多呢?
李诞第二季数据
最后,再来看一下,第三期的评论数据,从图中可以看出,负向情感要多于正向情感的数据。
李诞第三季数据
从上面的情感数据可以看出,《吐槽大会》从第一季到现在的第三季,不喜欢李诞的观众数量变得越来越多。
结语
不过还是可以明显对比出,在《吐槽大会》中,李诞要表现得更让观众喜欢,而在《奇葩说》中,更多的观众是在骂他。虽然是一种不同的表现形式,至少说,他依旧是一个焦点人物,不论是好是坏,总归是留在了用户心中 —— 人间不值得。
相关推荐
- 让 Python 代码飙升330倍:从入门到精通的四种性能优化实践
-
花下猫语:性能优化是每个程序员的必修课,但你是否想过,除了更换算法,还有哪些“大招”?这篇文章堪称典范,它将一个普通的函数,通过四套组合拳,硬生生把性能提升了330倍!作者不仅展示了“术”,更传授...
- 7 段不到 50 行的 Python 脚本,解决 7 个真实麻烦:代码、场景与可复制
-
“本文整理自开发者AbdurRahman在Stackademic的真实记录,所有代码均经过最小化删减,确保在50行内即可运行。每段脚本都对应一个日常场景,拿来即用,无需额外依赖。一、在朋...
- Python3.14:终于摆脱了GIL的限制
-
前言Python中最遭人诟病的设计之一就是GIL。GIL(全局解释器锁)是CPython的一个互斥锁,确保任何时刻只有一个线程可以执行Python字节码,这样可以避免多个线程同时操作内部数据结...
- Python Web开发实战:3小时从零搭建个人博客
-
一、为什么选Python做Web开发?Python在Web领域的优势很突出:o开发快:Django、Flask这些框架把常用功能都封装好了,不用重复写代码,能快速把想法变成能用的产品o需求多:行业...
- 图解Python编程:从入门到精通系列教程(附全套速查表)
-
引言本系列教程展开讲解Python编程语言,Python是一门开源免费、通用型的脚本编程语言,它上手简单,功能强大,它也是互联网最热门的编程语言之一。Python生态丰富,库(模块)极其丰富,这使...
- Python 并发编程实战:从基础到实战应用
-
并发编程是提升Python程序效率的关键技能,尤其在处理多任务场景时作用显著。本文将系统介绍Python中主流的并发实现方式,帮助你根据场景选择最优方案。一、多线程编程(threading)核...
- 吴恩达亲自授课,适合初学者的Python编程课程上线
-
吴恩达教授开新课了,还是亲自授课!今天,人工智能著名学者、斯坦福大学教授吴恩达在社交平台X上发帖介绍了一门新课程——AIPythonforBeginners,旨在从头开始讲授Python...
- Python GUI 编程:tkinter 初学者入门指南——Ttk 小部件
-
在本文中,将介绍Tkinter.ttk主题小部件,是常规Tkinter小部件的升级版本。Tkinter有两种小部件:经典小部件、主题小部件。Tkinter于1991年推出了经典小部件,...
- Python turtle模块编程实践教程
-
一、模块概述与核心概念1.1turtle模块简介定义:turtle是Python标准库中的2D绘图模块,基于Logo语言的海龟绘图理念实现。核心原理:坐标系系统:原点(0,0)位于画布中心X轴:向右...
- Python 中的asyncio 编程入门示例-1
-
Python的asyncio库是用于编写并发代码的,它使用async/await语法。它为编写异步程序提供了基础,通过非阻塞调用高效处理I/O密集型操作,适用于涉及网络连接、文件I/O...
- 30天学会Python,开启编程新世界
-
在当今这个数字化无处不在的时代,Python凭借其精炼的语法架构、卓越的性能以及多元化的应用领域,稳坐编程语言排行榜的前列。无论是投身于数据分析、人工智能的探索,还是Web开发的构建,亦或是自动化办公...
- Python基础知识(IO编程)
-
1.文件读写读写文件是Python语言最常见的IO操作。通过数据盘读写文件的功能都是由操作系统提供的,读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个...
- Python零基础到精通,这8个入门技巧让你少走弯路,7天速通编程!
-
Python学习就像玩积木,从最基础的块开始,一步步搭建出复杂的作品。我记得刚开始学Python时也是一头雾水,走了不少弯路。现在回头看,其实掌握几个核心概念,就能快速入门这门编程语言。来聊聊怎么用最...
- 一文带你了解Python Socket 编程
-
大家好,我是皮皮。前言Socket又称为套接字,它是所有网络通信的基础。网络通信其实就是进程间的通信,Socket主要是使用IP地址,协议,端口号来标识一个进程。端口号的范围为0~65535(用户端口...
- Python-面向对象编程入门
-
面向对象编程是一种非常流行的编程范式(programmingparadigm),所谓编程范式就是程序设计的方法论,简单的说就是程序员对程序的认知和理解以及他们编写代码的方式。类和对象面向对象编程:把...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)