当前位置:   article > 正文

大数据分析报告--微博舆情分析_微博舆情数据分析

微博舆情数据分析

1 事件背景

10月29日晚,超过十万人涌入韩国首尔梨泰院地区参加万圣节聚会。在一处狭窄的下坡路段,狂欢人群发生严重拥挤、推搡及踩踏。

10月30日凌晨,韩国首尔梨泰院踩踏事故已致 2 人死亡 50 多人受伤,总统尹锡悦就事故召开紧急会议。

10月30日上午,韩总统尹锡悦就梨泰院踩踏事故发表电视讲话 宣布进入国家哀悼期;中国驻韩使馆已确认四名中国公民死亡。

10月30日下午,事故死亡人数升至 154 人,其中包含来自14 个国家的 26 名外国人。

10月31日上午,警方揭露发生踩踏事故的小巷是一个斜坡,伤亡均发生在 18 平方米空间内,多数梨泰院踩踏遇难者因窒息时间过长死亡。

11月1日11:01,韩国梨泰院踩踏事故死亡人数升至 156 人。 

11月7日,韩总理就梨泰院踩踏事故道歉,政府增加灾难安全预算。6人因事故被立案调查,警察涉嫌玩忽职守、销毁警告文件。

11月10日,媒体报道梨泰院踩踏事故后,韩国学生流行起了“踩踏游戏”。

11月11日,涉嫌销毁梨泰院踩踏案证据,韩警员遭立案调查后被发现陈尸家中。

11月14日,事故遇难者名单在未经事先征求遗属同意的情况下,被韩国一家新生媒体公开。

2 分析思路

    首先对事件相关的微博进行爬取,得到发文时间、点赞次数、评论数、转发数、博文内容等主要数据,再以数据可视化的方式发掘数据中潜在的特征和规律,进而对整个舆情事件做出大致的分析。具体分析方法包括基本的统计分析、重点摘要分析、词云图、情感分析等。

3 数据采集与可视化

3.1数据采集

微博的PC端存在大量的验证机制,且官方API的使用需要申请认证,过程较为繁琐,因此对移动端页面的微博进行爬取是更好的选择。移动端的微博虽然不用验证也可以获得大部分内容,但使用了Ajax技术。针对这种情况,通过过滤出页面中的XHR并进行分析,可以获取到相关内容的API,进而获取到返回的json格式的数据,再对其内容进行提取,就能获得最终所需要的数据。除此之外,为了使爬虫与结果数据的使用更加方便,还使用了json对爬虫的参数进行自定义,并将爬取得到的数据按照关键词分别以excel文档的形式保存。

通过对该事件在平台中的传播情况进行分析,我们选取了六个词条作为微博搜索中的关键词,对搜索结果中的实时微博进行爬取,保存发布时间为10月30日到11月22日的微博相关数据,包括发布人id、发布人微博名、发布时间、点赞次数、评论次数、转发次数和博文内容。其中对于“梨泰院踩踏”词条的搜索结果中包含了有关该事件的较为近期的微博,而“#韩国梨泰院踩踏事故最新情况#”、“#韩国首尔梨泰院发生踩踏事故#”、“#韩总理公布梨泰院踩踏事故原因#”、“#梨泰院踩踏事故已致151人死亡#”、“#三名中国公民在韩国踩踏事故中遇难#”均为与本次事件相关的热门微博话题。

最终爬取得到的数据为六个excel文档,按照爬取的关键词不同,“梨泰院踩踏”得到了410条数据、“#韩国梨泰院踩踏事故最新情况#”得到了474条数据、“#韩国首尔梨泰院发生踩踏事故#”得到了481条数据、“#韩总理公布梨泰院踩踏事故原因#”得到了147条数据、“#梨泰院踩踏事故已致151人死亡#”得到了550条数据、“#三名中国公民在韩国踩踏事故中遇难#”得到了479条数据。由于爬虫爬取的是实时微博,因此运行时间的不同会对结果产生影响,我们主要是在11月23日运行爬行程序进行了数据采集。

数据采集关键代码截图

00fd531ff7d84e4780f86beb5b959c18.png

11e6c3dd89f44d0bb0f31e6b25664070.png

3.2数据预处理

对于爬取得到的六个excel文件,首先进行合并,得到一个包含全部2541条数据的excel文件。接着对数据进行去除重复处理,最后剩下2199条数据。最后根据数据可视化的形式,对数据进行不同的处理方法。

对于日期与博文数量关系图的绘制,首先去除文件中的空白行,将发布时间与转发次数以列表的形式提取出来,用正则表达式将发布时间中的时、分、秒去除,只留下日期。接着构造相关字典,用于将转发次数与日期出现的次数累加起来,最终得到以日期为键,以博文数量为值的字典。以日期为关键字对字典元素进行排序,再分别将键值转化为列表作为参数传入绘制直方图的函数中。

对于爬取到的博文内容,使用了python的第三方库harvesttext进行数据的清洗、分析。数据清洗:去除网址、email、微博的\@相关文本、去除文本中的“转发微博”、

包围的文本,一般是表情符号、去除##包围的文本,一般是微博话题、合并文本中间的多个空格为一个、繁体字转中文、把换行符转换成空格。在分析情感、文本摘要时,保留其原句的标点符号;在绘制词云图时,不保留原句的标点符号。

数据预处理关键代码截图:

12acadae0c204dca95ca4e166972c7d2.png

图 1 数据准备

1e8ee88c963a463c9c8e987f9d459e2b.png

图 2 数据清洗

920489e58479409f8d08b57ab4197a84.png

图 3 去除停用词与分词

3.3数据可视化

3.3.1 日期与博文数量关系

我们使用了matplotlib来绘制直方图,其中将日期设为y轴,博文数设为x轴进行可视化分析。

关键代码截图:

fe2b59f608e84f87869f79efdc9519db.png

图 4 绘制直方图

3.3.2 摘要分析

我们主要使用了harvesttext库中的get_summary函数进行文本摘要的分析,文本摘要分析是基于textrank+MMR的无监督抽取式摘要方法得到文本中的关键句。其中参数的设置为:文本摘要语句为10句。同时,使用了MMR principle惩罚与已经抽取的摘要重复的句子做比对,以免重复。

关键代码截图:

6216b4ad18654044b4e0591b364cd033.png

图 5 文本摘要模块

145c1717f1d74497a78e7847c5f552a6.png

图 6 调用文本摘要

3.3.3 情感分析

我们使用了harvesttext库中的SentimentMixin模块进行分析,此情感分析模块是基于SO-PMI的情感词典挖掘和情感分析算法,在build_send_dict函数中利用种子词,构建情感词典。同时情感分析结果设置为“+-1”,在正负区间内分别伸缩,保留0作为中性的语义。另外,根据手动调试的结果,我们也分别设置了积极种子词和消极种子词,pos_seeds=["平安","平平安安","自救","安息"],neg_seeds=["可怕","吓人","悲剧","恐怖","痛苦","不幸"]。在analyse_sent函数中,我们对清洗过的带有标点符号的博文数据进行逐句分析得到其情感分析值。在取得每一句的情感分析值后存入到列表之中。进行完情感分析值后使用pyecharts库进行饼图的绘制。根据手动调试的结果,我们将分析值大于等于0.15的认定为积极,小于等于-0.2的认定为消极,其余部分认定为中立,利用积极、消极、中立得出来的三个数值绘制出我们所需要的网民情绪分析图。

关键代码截图:

b0da0f8cb11b4f83a638301ffa6f9261.png

图 7 情感分析模块

6e3b138b55ec43f28114db31b7b24ba6.png

图 8 情感分析

8f55f292703f4f55a3561ceea58c556a.png

图 9  饼图绘制

3.3.4 词云图

我们先对清洗后的数据作进一步的处理:先将清洗后的数据加到一起,之后使用下载的停用词表进行处理,最后再进行分词得到制作词云图所需要的数据。词云图使用wordcloud库进行绘制,设置最短字数为2,将一些扰乱分析的词语去除之后,得到我们所需要的词云图。

6c08011975c74c548d8cc153bfc613ea.png

图 10 绘制词云图

 

 

4 舆情分析

4.1 传播情况分析

3de0204c4b214ea3acbe07df53ea43c5.png

图 11 日期与博文数量关系图

 

如上图所示,相关舆情在微博上引发的关注度在事件初期达到峰值,随后逐渐降低,期间伴随着事件的主要进展略有提高。其中在11月2日博文数量的增加主要与关于中国遇难者情况、中国遇难者家属发声、中国幸存者吊唁同胞的报道有关;11月10日的博文主要关于梨泰院踩踏事故后,韩国学生流行起了“踩踏游戏”的媒体报道有关;11月11日引发关注的事件主要是受到调查的警察官员死亡、一位韩国艺人在事故中身亡,以及关于如何在踩踏事件中自救的博文。

11月15日博文数量的增加主要与一篇转发量颇高的内容为:“梨泰院踩踏事件过去了半个月,韩国人在追责质询过程中,却发现这起惨案背后似乎有离奇隐情。警察局被指接到报警电话后拖延出警,甚至在事故发生后,相关负责人立刻删除关键证据,随后在家“自杀身亡”……“的博文有关。除此之外,在事件初期,对该事件发表的原创微博数量较多,而在事件中后期,舆情的传播主要依靠对媒体或“博主”的微博进行转发。

4.2舆论分析

4.2.1文本摘要

我们从2199条数据中得出来了十条具有代表性的博文内容,删除掉视频号的标题,我们余下的九个句子分别是:

“太可怕了,人多的地方不要去”

“韩国梨泰院踩踏事件第一视角感觉好窒息啊”

“心痛,逝者安息”

“像我这种巨宅无比不爱凑热闹讨厌人多的社恐人踩踏事故对我来说几乎是无可能性”

“踩踏事故是如何发生的能否避免,从近年国内外严重事故探寻答案”

“国内出事就那么喜欢压rs,国外一出事宣传力度可真到位”

“不论如何这种时候都不应该冷嘲热讽阴阳怪气别忘了几年前在外滩也发生过如此惨烈的事故 我们自己痛过就不应该嘲笑他人的痛”

“我驻韩使馆中国驻韩国大使馆向总台记者确认目前已有三名中国公民在此次事故中遇难,使馆正同当地警方等有关部门沟通”

“应该是可以要求韩国出个解释”

 

4.2.2情感分析

 

e080f071dbc8454d9412908a9b77c324.png

图 12 情感比例图

 

通过对2199条数据进行情感分析,我们发现,情绪中立的内容占大多数,而情绪偏消极的发言要比偏积极的多。通过对单条内容进行查看后可知,情绪为中立的内容中,对于事件的客观报道较多;情绪为积极的内容中,对同胞的祝福与提醒较多;情绪为消极的内容中,与事件受害者共情、对事件输出直观感受的博文较多,以下是部分分类后博文的情绪指数与博文内容:

积极:

0.217741:希望大家在外都好好的平安无事

0.177381:节哀希望大家一定要注意安全

0.284120:希望同胞们在外都注意安全平安最重要

0.177218:注意安全啊啊啊

0.163613:都要注意安全平平安安的

消极:

-0.236214:现在过成真鬼节了

-0.218867:真的不知道要说什么了

-0.346675:扮鬼成真鬼何其悲哀

-0.206105:视频好窒息

-0.221488:这是拿逝者消遣简直无法想象

中立:

-0.167621:梨泰院事件中一位中国女生的幸存回忆记录

-0.022015:韩国 首尔 一名男子爬上一栋建筑物的墙壁逃离了踩踏事件

-0.082217:韩国总统尹锡悦赶到事发现场

-0.131941:记得好几年前外滩的踩踏事件人多还是少聚集人那么多也看不到啥风景

0.017945:驻韩国使馆提醒中国公民加强安全防范

4.2.3词云图

根据清洗+分词后的2199条数据,加上20个此事件无关停用词,我们绘制出来了此次事件的词云图:

8636d388227441b2a91ffdab066f3080.png

图 13 词云图

根据词云图,我们可以看到网友发言频率较高的几个词为:逝者安息、中国公民、万圣节、遇难、拥挤、龙山区、疫情、凑热闹、可怕、窒息、警方。其中“中国公民”和“警察”是微博网友们在事件中关注较多的群体;“万圣节”为事件发生的时间,也与事件发生的原因有关;“龙山区”为事件发生地;“可怕”为网友们对事件的评价;“窒息”和“拥挤”描述了事件现场状况。

5 总结

5.1 对本次事件分析的总结

通过对数据可视化的结果进行分析可知,大部分微博网友对此次事件的态度较为一致,对事故的现场情况感到害怕、对事故造成的惨剧感到悲伤与惋惜、对在韩同胞表示担忧、对遇难者表达了尊重。除此之外,也有网友试图对事故的原因进行探讨,与国内的类似事件进行比较。

除了事故本身,网友们对韩国学生流行起了“踩踏游戏”事件的关注度也较高,许多网友表示愤怒与难以置信。总的来说,微博网友的共情力较高、正义感较强、善于表达、乐于提出问题、具备发散性思维。而从事件本身来看,也有很多值得我们深入思考的地方。首先是在疫情背景下,年轻人几乎没有机会参加大型节日庆祝活动,这是否是此次事件中的人群陷入疯狂的原因;其次是这次事件中暴露出的韩国公共安全管理方面的问题,我们能否对照这些问题,总结经验; 最后,在部分网友眼中,此次事件可谓疑点重重,不仅有对于韩国警方内部的怀疑,更有上升到对整个韩国社会的怀疑。也许是因为自新冠肺炎疫情爆发以来发生的“黑天鹅”事件太多了,且很多时候都没有清晰可辨的原由,使得网友们变得比从前更愿意去考虑一些看似离奇的事情。

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/222800
推荐阅读
相关标签
  

闽ICP备14008679号