菜鸟大叔 菜鸟学Python 1月3日

2020年新闻联播大盘点,我用Python带你回顾一下_Python

2020年转眼之间就过去了,这一年,我们经历了太多太多的事情,疫情的冲击、国际形势的变化,深深的关系到我们每一个人的生活。


为了对于全年的新闻做一个盘点,我们今天用Python针对于《新闻联播》全年的新闻文字稿进行抓取,并进行分析,来看一下过去的2020中,《新闻联播》中的一些大数据信息。


01.数据抓取

首先,对于数据的获取,可以从《新闻联播》的网站中获取,网址为:​http://www.xwlbo.com/​

在网页中,会显示每天的新闻稿件的文字内容。我们的任务就是抓取这些文字稿件,然后将其写入到本地的文件中。


对于数据的抓取,我们可以利用之前跟大家介绍的gopup库(​​GitHub出了一款爬虫神器!还给出了详细教程!​​)来进行抓取。程序如下图所示。

2020年新闻联播大盘点,我用Python带你回顾一下_Python_02

上图程序中,我们首先来构建2020年中的每一天时间,例如“2020-01-01”代表的就是2020年一月一号。


接着我们利用gopup的接口来抓取新闻稿的数据,并根据关键句子“央视网消息(新闻联播文字版)”来提取新闻联播的文字稿件,并写入到本地。通过不断的循环,我们就能提取到每一天的《新闻联播》稿件。


2020年新闻联播大盘点,我用Python带你回顾一下_Python_03

可以看到,这里我们按照时间的顺序,抓取到了2020年一共366天的《新闻联播》稿件。


02.数据分析


虽然我们抓取到的是文字信息,里面没有数值型的数据,但是我们依旧可以从文字中获取到非常多我们感兴趣的数据,例如词云的展示、各个省市自治区被提名的次数统计等信息。下面我们来看一下几个我们比较感兴趣的内容吧。


1).新闻稿件数量统计

对于每一天的新闻,都会有许多个小的标题,例如2020-01-01的文件稿中就有新年戏曲晚会在京举行、不负韶华 跑出新时代中国风采等共计14个小的标题。我们针对每天的稿件小标题数量进行统计,然后进行数量统计,来看一下,全年的新闻中,小标题数量的分布是什么形式。


上述的程序中,首先统计每天稿件中小标题的数量,存储到news_len_count列表中,然后对列表进行数值统计,并用pyecharts库中的柱状图进行可视化展示。


可以看到,全年的新闻稿件中,小标题数量在15到18的数量是最多的,而小标题数量为1和39的统计值分别只有1个。小编特地查询了一下,是2月3号和11月6号的新闻。


2).各省市自治区被提名次数

一个省被提名的次数越多,在一定的意义上代表着这里有国家最为关心和关切的事情。所以我们来看一下,2020年当中,被《新闻联播》提及次数最多的省市自治区是哪个吧。

2020年新闻联播大盘点,我用Python带你回顾一下_Python_04


上述的程序中,首先统计全年新闻中的省市自治区的提及次数,然后我们利用pyecharts中的柱状图和Map图来进行叠加展示,如下图所示:


2020年新闻联播大盘点,我用Python带你回顾一下_Python_05

可以看到,在2020年中,提及次数最多的是被全国人民所牵挂的湖北省,也是疫情最为严重的省份。


除此之外,北京、新疆和上海是提及最多的前三个地方。其余的省市自治区被提及的次数差别并不是特别的明显。


3).武汉被提及的次数按照月份统计

提及到湖北,我们不能不针对武汉来进行统计,我们按照月份的变化,来看一下随着时间的发展,武汉被提及的次数的变化情况。

2020年新闻联播大盘点,我用Python带你回顾一下_Python_06

对于数量的统计,我们只需要按照月份分别读取每天的新闻数据,然后统计每天新闻中“武汉”关键词的数量。对于统计的数量,利用Line类进行可视化即可。


2020年新闻联播大盘点,我用Python带你回顾一下_Python_07

从数据统计来看,在1月到4月,武汉疫情严重期间,新闻联播利用大量的篇幅来报道武汉的疫情,让全国人民能够及时的了解疫情的发展,为志愿武汉的抗疫工作者加油。


在全国人民的努力下,武汉的疫情在五月份大幅的好转,在4月26日,武汉市实现了在院新冠肺炎患者清零。


4.全球其他国家被提及的次数

看完了国内的情况,我们再把目光转到国际,来看一下2020年中全球被提及最多的国家有哪一些。这里需要注意的是,由于统计的数据中,中国、美国和俄罗斯的提及数量太多,严重超过了其他的国家,因此我们直接将这三个国家提及的次数单独列出来,这样可以让其他国家的颜色显示更加有区分度。

而对于我国,美国和俄罗斯这三个国家,提及的次数为:{'中国': 8382, '美国': 4405, '俄罗斯': 1110}

2020年新闻联播大盘点,我用Python带你回顾一下_Python_08


5.词云展示

作为年终总结,对于关键词的统计和词云展示是必不可少的压轴项目。我们来看一下《新闻联播》的词云展示,看看过去的2020年都有哪些关键词。

2020年新闻联播大盘点,我用Python带你回顾一下_Python_09

从词云的展示中,我们可以看到,疫情是最主要的关键词,纵观整个2020年,全球的疫情形势都是我们关心的话题,这也关系到我们每一个人的健康问题。而在其他的关键词中,大都也是围绕疫情问题所展开的,我觉得“疫情”可以称得上2020年新闻联播的年度话题。

6.总结

回顾2020年,我们经历了许多的困难,但是在困难中,我们看到了坚守,看到了中国人身上那百折不挠的精神。虽然“鼠实困难”,但是我相信新的一年我们必定能“牛转乾坤”。