京公网安备 11010802034615号
经营许可证编号:京B2-20210330
作者:闲欢
来源:Python 技术
2021年已经过去了,但是这一年发生了很多令人难忘的事情,相信每个人心目中都有很多感慨。
为了回顾2021年都发生了哪些大事,我打算从热搜下手,看看2021年都有哪些热搜事件。
大家都知道,微博热搜是实时更新的,并且没有历史记录,所以从微博的网站上找不到历史的热搜数据。我们只能另想它法了。经过我不懈的摸索,终于找到了一个网站,它记录了每日的微博实时热搜,并且是一分钟一次。也可以在网站上通过日期查询当天的数据。
有了目标网站就好说,我们想办法从目标网站下载数据就好。这个网站提供了付费下载数据的方式。我这里为了给大家演示使用 Python 爬虫爬取数据,就不付费下载了。
网站的请求也比较简单,大家打开网页的开发工具,可以很快定位到获取请求的 URL 。这里就不赘述了,直接上代码:
headers = { "Host": "google-api.zhaoyizhe.com", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36" } def scrapy(date): print('开始爬取%s' % date)
url = 'https://google-api.zhaoyizhe.com/google-api/index/mon/sec?date=%s' % date try:
time.sleep(random.randint(1, 3))
res = requests.get(url, headers=headers).json()
result = res['data'] return result except Exception as err:
print(err) return None
我们定义一个爬取的函数,通过传入日期来爬取一天的热搜数据。整个2021年的数据我们只需要循环请求每一天即可。
整个数据下载下来一共12万多条:
分析热点事件,最好的方法就是把这些事件描述制作成词云,突出显示的就是最热门的,一目了然。
def gen_wc_split_text(data_list=[], max_words=None, background_color=None, # font_path='/System/Library/Fonts/PingFang.ttc', font_path=r'C:WindowsFontssimhei.ttf',
output_path='', output_name='',
mask_path=None, mask_name=None,
width=400, height=200, max_font_size=100, axis='off'): stopwords = open(r'c:pworkspacemypypythontechweibohotstopwords.txt', 'r', encoding='utf-8').read().split('n')[:-1]
words_dict = {} for data in data_list:
text = data['topic']
hotNumber = data['hotNumber'] if hotNumber is None:
hotNumber = 1 all_seg = jieba.cut(text, cut_all=False) for seg in all_seg: if seg in stopwords or seg == 'unknow': continue if seg in words_dict.keys():
words_dict[seg] += hotNumber else:
words_dict[seg] = hotNumber # 设置一个底图 mask = None if mask_path is not None:
mask = np.array(Image.open(path.join(mask_path, mask_name)))
wordcloud = WordCloud(background_color=background_color,
mask=mask,
max_words=max_words,
min_font_size=15,
max_font_size=80,
width=300,
height=400, # 如果不设置中文字体,可能会出现乱码 font_path=font_path)
myword = wordcloud.generate_from_frequencies(words_dict) # 展示词云图 # plt.imshow(myword) # plt.axis(axis) # plt.show() # 保存词云图 wordcloud.to_file(path.join(output_path, output_name))
制作词云我们选择试用 jieba 分词,使用我们熟悉的 wordcloud 来制作词云。
我们先来看看2021年全年的词云图片:
看着这张词云图片,是不是有好多熟悉的词汇?
接下来,我们按月份来统计热门事件,具体需要做的就是将每个月的热搜事件归集起来,然后根据热度以及出现频率叠加,来输出词云。
代码还是跟上面类似,只不过是将事件按月分类而已。
我们直接来看每个月的图片吧。
2021年在疫情中开启,在大家喊着“告别2020,开启2021”时,石家庄疫情爆发,进入战时状态。
薇娅也在这个月开始直播年货。
最后以陈翔出轨关晓彤导致工作室互怼结束。
这个月最热门的事件肯定是我们的传统春节了。
贾玲的导演处女作《你好,李焕英》,一上映就口碑炸裂。
这个月我们失去了两位明星,分别是赵英俊和吴孟达,一个时代的记忆就此落幕。
这个月明星白敬亭出尽风头。
HM、耐克等众多我们熟知的国外品牌抵制新疆棉花,遭到央视点评,全民愤怒。
这个月中美高层对话,71岁的杨洁篪老爷子怒怼东道主美国。
4月,各地大规模全员动员打疫苗。
也是这个月,日本宣布把福岛核废水排进太平洋。
这个月赵丽颖和冯绍峰宣布离婚,明星事件真是层出不穷。
最令人痛心的事件是杂交水稻之父袁老爷子走了,举国哀悼。
而就在同一天,“中国肝胆外科之父”吴孟超院士也去世了。
5月20日,全网盼离的佟丫丫,终于宣布和陈思诚离婚。
6月的大事件当属高考。
这个月,汪小菲和大S频上热搜。
这个月,神舟十二号飞船成功发射,3名航天员飞到了“天宫”。
这个月,河南郑州暴雨成灾,举国瞩目。
这个月,东京奥运会开幕,林丹和李宗伟一起看奥运。
这个月,吴亦凡翻车,都美竹爆料,网友又多了一个“吴签”的梗。
这个月,奥运会捷报频传,全红婵、苏炳添进入大众视野。
吴亦凡事件继续发酵,都美竹对吴亦凡的指控成真让他成为内娱被刑拘爱豆第一人。
演员张哲瀚被爆出进入靖国神社内部,拍摄多张开心比“耶”的照片,刚翻红就掉下去了。
孟晚舟在被困加拿大近三年后,终于回国。
体育盛事全运会刷屏。
全国人民中秋节一起吃月饼赏月。
国庆档大片《长津湖》打破8项影史记录。
知名钢琴家李云迪嫖娼被抓。朝阳群众又立一功。
上海一个独居女孩,被装进行李箱抛尸。
电竞战队EDG再夺冠,轰动全球。
上海迪士尼几万人封园做核酸。
双十一,董明珠隆重推出22岁的女助理孟羽童,“明珠羽童精选”直播间开播。
娱乐圈优质偶像王力宏被曝渣男,彻底崩塌。
直播女王薇娅因偷漏税被罚了13.4亿。吃瓜群众惊呼,原来直播这么暴力。
西安出现“多源头不明的点状社区传播”,紧急“封城”。
2021年是不平凡的一年,这一年,我们见证了太多。新冠疫情始终是笼罩我们上空的一团乌云。在这个特别的年份里,娱乐圈也是精彩不断,各种离婚事件层出不穷,几大优质形象瞬间成渣。
2022年也将是不平凡的一年,愿疫情早点过去,世界和我们都能更好!
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在Python数据分析中,Pandas库的DataFrame是最核心、最常用的结构化数据表对象,类似于Excel的二维表格,具备规整的行列结构、字 ...
2026-09-07在数据分析、经营复盘、业绩预测与经济统计工作中,平均增速(平均增长率)是衡量数据长期变化趋势、业务发展快慢的核心指标。不 ...
2026-09-07 很多数据分析师精通Excel单元格操作,但当被问到“表结构数据的基本处理单位是什么”“字段和记录的本质区别”“为什么表结 ...
2026-09-07随着大数据技术的快速发展,商业竞争逐步从传统的经验式经营转变为数据驱动的精细化运营。海量的用户行为数据、交易数据、运营数 ...
2026-09-04CDA数据分析师 出品 作者:李诗怡 1. 波士顿矩阵(BCG Matrix) 定义: BCG于1970年提出的业务组合分析工具,以"市场增长率"(纵 ...
2026-09-04 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-09-04数据透视表是Excel与Power BI中最核心的数据分析工具,具备快速汇总、维度拆分、动态筛选的能力,可高效完成数据归类与统计展示 ...
2026-09-03在Power BI数据分析可视化场景中,堆积柱状图+折线图是最常用的复合图表组合。堆积柱状图适合展示各细分维度当期数值、结构占比 ...
2026-09-03 很多数据分析师每天与Excel打交道,但当被问到“表格结构数据的基本处理单位是什么”“数据类型误判会引发哪些分析错误”“ ...
2026-09-03CDA数据分析师 出品 作者:李诗怡 一、8个核心数据清洗函数 1. TRIM:一键清除多余空格(最常用) 作用:仅保留文本中"单词/字 ...
2026-09-02数据分析的核心并非单纯操作工具、整理报表或绘制图表,而是依靠科学的思维逻辑挖掘数据价值、解释业务现象、指导经营决策。在完 ...
2026-09-02在社会经济、产业研究、区域治理与大数据实证分析中,面板数据是最具研究价值的数据类型。面板数据同时包含截面维度与时间维度信 ...
2026-09-02 很多数据分析师能熟练计算均值、标准差,但当被问到“如何用一张图让业务方3秒内看懂核心结论”“面对不同数据类型该怎么选 ...
2026-09-02在数据驱动决策的体系中,数据分析按照分析目的可分为描述性分析、诊断性分析、预测性分析与指导性分析四大类型。其中,诊断性分 ...
2026-09-01网络请求是Python爬虫开发、接口测试、数据拉取的核心基础功能,Python生态中主要依靠 urllib 和 requests 两大库实现HTTP请求操 ...
2026-09-01 很多数据分析师面对业务问题时,常常感到“知道要分析,却不知道用什么方法”。其实,数据分析并非无章可循——从三大基础范 ...
2026-09-01在数据库设计与业务数据维护中,自增ID是数据表最常用的主键字段,用于唯一标识每一条业务数据,正常状态下ID应保持连续递增。但 ...
2026-08-31在数理统计、数据分析、经济测算与日常量化评估中,平均值是刻画数据集中趋势、反映整体水平的基础核心指标。在实际应用中,最常 ...
2026-08-31在数据驱动的时代,数据分析早已不是“凭经验、靠感觉”的零散操作,而是一套具备固定逻辑、标准化流程的系统方法——这就是数据 ...
2026-08-31在大数据时代背景下,海量行业数据亟需通过专业化工具挖掘潜在价值,辅助企业业务决策、优化运营模式、规避经营风险。Python凭借 ...
2026-08-28