当前位置: 首页 > 科技观察

用Python做微博热搜舆情分析

时间:2023-03-21 18:44:06 科技观察

大家好,我是志斌~今天志斌在看微博热搜的时候,发现了这样一个热搜。心想,这真该改改了,真是个油锅!于是志斌爬取了这条微博下的数据,进行了简单的舆情分析!需要源码的同学,加志斌微信获取~一、数据采集志斌在前两篇文章中详细介绍了如何获取微博评论。有兴趣的读者可以看看这两篇文章。这里志斌直接展示核心代码,代码如下:forpageinrange(1,10000):ifpage==1:params=(('id','4654152979845247'),('mid','4654152979845247'),('max_id_type','0'),)#s=requests.Session()response=requests.get('https://m.weibo.cn/comments/hotflow',headers=headers,params=params)a=回复。json()['data']['max_id']b=response.json()['data']['max_id_type']foriinresponse.json()['data']['data']:pinglunshijian=i['created_at']neirong=re.sub(r'<[^>]*>','',i['text'])id=i['user']['id']yonghumingcheng=i['user']['screen_name']withopen(r'71.txt','a',encoding='utf-8')asf:f.write(f'{neirong}\n')params=(('id','4654152979845247'),('mid','4654152979845247'),('max_id',str(a)),('max_id_type',str(b)),)print(f'抓取{page}页数据。..')time.sleep(random.randint(1,3))二、可视化分析下面我们对这些数据进行可视化分析。这张图使用了两个软件,Excel和Tableau。1.点赞数前10的用户我们发现用户OvalYuanzi发表的评论最多,有9.5w+点赞。让我们看看他的评论是什么,让用户非常喜欢。这是一篇纯吐槽,点赞那么多,可能是发的早,也可能是引起了老师们的同情。2.评论的日期分布从图中我们可以清楚的看到7.6的评论人数最多,这可能与今天的热搜有关。毕竟上了热搜之后曝光度就高了!3、评论时间对6日的评论发布时间进行分发分析,发现19:00评论数量最多。看到这个热搜的时候,基本就是这个时候了。看来热搜对一条新闻的影响很大。4.词云图从词云图中可以看出,人们对“寒暑假”这个词的讨论非常多。学生、注销、行业等词也被提及不少。翻了一下评论,发现大部分人都不想取消的。当然,志斌也觉得没有取消的必要。三、小结1、通过分析可以看出,热搜对于每条微博的影响是巨大的。2、大家都舍不得取消寒暑假。3.本文仅供学习参考,不作其他用途。