国庆长假的最后一天,鹿晗在微博上公开宣布和关晓彤的恋情。消息来得太突然,不仅粉丝圈里炸了,顺带连微博服务器也给炸了。在此心疼新浪运维工程师一秒,放个假都不能省心。

这条微博让粉丝们心情复杂,却让各路媒体们集体高潮,从各种刁钻的角度进行了全方位的报道和评论,蹭热点的姿势令人眼花缭乱。(在这点上不得不承认,我们是个不称职的公众号,到今天才有了这么一篇分析。)

到目前,这条微博已经有了280多万条评论。有点赞祝福的,有质疑的,当然也少不了悲痛欲绝,甚至表示取关粉转路人的。那么究竟粉丝们对此事的态度如何,真的“原谅”鹿晗了吗?于是,我们编程教室的小伙伴用 python 对评论里的情绪做了个简单的统计分析。

先说我们的结论:原谅?不存在!

此微博的评论中负面情绪较多,说明还是被扎心的粉丝们占了多数,不是一时半会儿就能“原谅”的。这也是符合主观感受的。引用一个热评来说就是“3909万粉丝,一起失恋了”。

这是我们通过一些数据分析得出的结论,到底是不是可信,可以一起来看下我们的分析过程。

1. 抓取微博评论

抓取微博使用了爬虫框架 scrapy,并结合 mongodb 作为数据存储。通常来说,手机版网页会比 PC 版网页更容易抓取数据,所以我们通过 m.weibo.cn 找到了此条微博的评论数据接口:

https://m.weibo.cn/api/comments/show?id=4160547165300149&page=1

通过修改 page 参数,可以获取各页评论。

得到数据之后,通过正则或 bs4 对信息进行提取(我们的代码里用了正则),将评论内容文本存入数据库。

2. 情感分析

2.1 snownlp

首先我们使用了 python 的一个情感分析库 snownlp。在开发过程中,我们看到知乎上也有人做了同样的工作:用python对鹿晗、关晓彤微博进行情感分析 - 宅米RICE https://zhuanlan.zhihu.com/p/29968019

利用500W条微博语料对评论进行情感分析 - 布道 https://zhuanlan.zhihu.com/p/30061051

snownlp(https://github.com/isnowfy/snownlp)是一个可以方便处理中文文本的 python 库,提供了分词、词性标注、情感分析、文本分类、转拼音、繁转简、提取关键词、摘要等功能,功能十分强大。

分析结果:

图中情感值越接近 0 表示越消极,越接近 1 表示越积极。从结果来看,0、1 两端和中间 0.5 的数量最多,整体上较为平衡,稍稍偏积极一些。

可真的是这样吗?

我们来挑几热门评论尝试下:评论情感值大家觉得是假的点赞0.99

大家觉的鹿晗与关晓彤不配的请点赞。0.48

一定是电视剧的宣传。一定是。0.39

不喜欢关晓彤的赞我0.80

哥哥 我们心脏不好0.98

同意恋爱,关晓彤就算了吧。0.55

如果不是关晓彤。。我觉得我还没那么心痛!人生的悲哀就是最喜欢的和最讨厌的在一起了0.81

这好像不大对吧。

后来进一步了解发现,snownlp 的默认训练语料库是针对网上商品的购买评价,将其得出的模型用在此微博评论的分析上并不是很准确。于是我们又从网上找了一份针对腾讯微博上新闻事件评价的语料库,来修正训练数据。但可惜因为样本量较少,并且也不是很符合此场景,因此结果和上述差别不大。

我们上面提到的两篇文章,结论也与此类似。如果要进一步提升 snownlp 准确性,则需要一定数量的手动标记样本。

2.2 腾讯文智

那如果一时没有那么多的标记样本,有没有其他方法?我们找到了“腾讯文智” — 腾讯出品的中文语义平台,支持 NLP、转码、抽取、全网数据抓取等中文语义分析需求。这个平台是收费的,不过有一些免费配额,足够我们做一些小的实验分析。

在使用之前,我们也将前文的几条热评测试了一下:

我们来挑几热门评论尝试下:评论情感值大家觉得是假的点赞0.52

大家觉的鹿晗与关晓彤不配的请点赞。0.53

一定是电视剧的宣传。一定是。0.50

不喜欢关晓彤的赞我0.62

哥哥 我们心脏不好0.02

同意恋爱,关晓彤就算了吧。0.48

如果不是关晓彤。。我觉得我还没那么心痛!人生的悲哀就是最喜欢的和最讨厌的在一起了0.35

从这几个例子来看,文智相对要准确一点,虽然有些评论依然没有被划归到负面,但至少没有给到很夸张的积极情感值。

由于文智的数量限制,我们对数据中进行了随机抽样,用一小部分数据进行分析,并且过滤掉了情感值为 0.5 的部分(其中有不少是纯表情回复),得到如下结果:

尽管在手动测试时发现文智的预测会略偏积极,但即便如此,最终的结果依然偏向消极。由此推断,实际的情感可能比这个分布更加负面。这也就是我们文章开始时给出的结论。

这个结论其实并没有多大意义,反正我也不粉鹿晗,但通过程序来做情感分析,也许你会用得到。

python微博情感分析,Python情感分析:鹿晗的粉丝们究竟原谅他了吗?相关推荐

  1. Python情感分析:鹿晗的粉丝们究竟原谅他了吗?

    2019独角兽企业重金招聘Python工程师标准>>> 国庆长假的最后一天,鹿晗在微博上公开宣布和关晓彤的恋情.消息来得太突然,不仅粉丝圈里炸了,顺带连微博服务器也给炸了.在此心疼新 ...

  2. 美国网红python微博_利用Python对微博网红进行对比

    前言 在之前的分享中,我们已经学会了简书和知乎小姐姐的爬虫.今天罗罗攀把魔爪伸向了微博网红们,我们找找谁是最美网红.今天的流程如下: 网页分析 这里的微博网红链接:https://weibo.com/ ...

  3. 如何科学地蹭热点:用python爬虫获取热门微博评论并进行情感分析

    前言:本文主要涉及知识点包括新浪微博爬虫.python对数据库的简单读写.简单的列表数据去重.简单的自然语言处理(snowNLP模块.机器学习).适合有一定编程基础,并对python有所了解的盆友阅读 ...

  4. python3爬取微博评论api情感分析_如何科学地蹭热点:用python爬虫获取热门微博评论并进行情感分析...

    param = (comment_id,user_name,created_at,text,likenum,source) try: A = cur.execute(sql,param) conn.c ...

  5. python微博评论情感分析_基于Python的微博情感分析系统设计

    2019 年第 6 期 信息与电脑 China Computer & Communication 软件开发与应用 基于 Python 的微博情感分析系统设计 王 欣 周文龙 (武汉工程大学邮电 ...

  6. [Python人工智能] 二十二.基于大连理工情感词典的情感分析和情绪计算

    从本专栏开始,作者正式研究Python深度学习.神经网络及人工智能相关知识.前一篇文章分享了CNN实现中文文本分类的过程,并与贝叶斯.决策树.逻辑回归.随机森林.KNN.SVM等分类算法进行对比.这篇 ...

  7. Python使用阿里API进行情感分析

    目录 1.作者介绍 2.原理介绍 2.1自然语言处理情感分析介绍 2.2 API介绍 3.实现过程 4.实验代码及结果 4.1实验代码 4.2实验结果 1.作者介绍 魏永健,男,西安工程大学电子信息学 ...

  8. python snownlp情感分析_SnowNLP情感分析+生成词云

    本帖最后由 missy 于 2017-12-9 00:12 编辑 因为最近看了一下<致我们单纯的小美好>,虽然情节是有点"二"吧,但是看了觉得真的很怀念初高中的日子,一 ...

  9. 【人工智能毕设之基于Python+flask+bilstm的评论情感分析系统-哔哩哔哩】 https://b23.tv/QU56eTl

    [人工智能毕设之基于Python+flask+bilstm的评论情感分析系统-哔哩哔哩] https://b23.tv/QU56eTl https://b23.tv/QU56eTl

  10. 【Python数据分析】文本情感分析——电影评论分析(一)

      情感分析是文本分析的一种,它能够从一段文本描述中理解文本的感情色彩,是褒义.贬义还是中性.常见的情感分析的使用场景就是客户对商品或服务的评价.反馈,传统模式下的人工审核,不仅消耗大量人力,而且效率 ...

最新文章

  1. 【Python自动化测试】setuptools
  2. 2021春季学期-创新设计与实践-课程结构设计
  3. 硬核NeruIPS 2018最佳论文,一个神经了的常微分方程
  4. Linux-find命令
  5. PL/SQL -- 函数
  6. stm32 DMA使用详解
  7. c#学习体会:使用 ref 和 out 传递数组
  8. 关于 SAP Spartacus OAuth 2.0 Resource Owner Password Flow 实现的一些讨论
  9. 计算机网络作业6,计算机网络作业 6
  10. ECMAScript 的部署进度
  11. sql 批量插入数据到Sqlserver中 效率较高的方法
  12. JAVA敏捷开发环境搭建
  13. 当前网络存在的安全问题
  14. golang 对象转json
  15. 5个必看的Docker视频
  16. 安卓原生系统_体验类原生安卓系统PixelExperience流畅得不像话
  17. python arduino小车,搭建ROS小车底盘-第六篇ros_arduino_bridge功能包的使用
  18. Windows服务器提示密码过期怎么办?服务器密码过期会怎么样?
  19. 给图片加ALT属性是个什么意思?有什么优点呢
  20. 拜读经典——大话设计模式(一)——温习C#

热门文章

  1. 路由器获取不到动态ip地址
  2. 导出数据提示--secure-file-priv选项问题的解决方法
  3. graphpad prism怎么添加图例_如何用Graphpad prism添加多个图例
  4. PMIC 配置VIN0 VIN1选择
  5. 计算机知网期刊排名,中国知网网络首发期刊榜单发布,《重庆医学》进入高发文量TOP50(科技类)...
  6. 还在考驾照的你知道汽车是怎么动起来的吗?
  7. 张飞硬件90天学习笔记——第01天个人记录,完整请看我的个人简介/主页
  8. 10.2 校内集训 解题报告
  9. 我母亲在一家计算机公司工作,我的母亲作文
  10. html5游戏 做广告联盟怎么样,几个比较好的国外广告联盟推荐