【爬虫、数据可视化实战】以“人口”话题为例爬取实时微博数据并进行舆情分析

前言:

近期在weibo上讨论的比较热的话题无非就是“人口”了。TaoTao也看了一些大家发的内容。但是感觉单纯的看文字内容不能很直观的反应出来大家的关切。索性就使用爬虫对数据进行爬取,同时结合着数据可视化的方式让数据自己开口说话。那么接下来就让我们使用技术进行分析吧!

流程:

这里主要可以分为三个流程:
1、数据爬取
2、数据清洗
3、数据可视化
流程如下所示:

数据爬取:

这里TaoTao采用的方式是使用python对数据进行爬取。主要就是爬取实时数据进行分析

在这里插入图片描述
详细数据如下所示:

页码:表示一共爬取了多少页的微博
微博id:表示爬取的是具体的哪一篇微博数据
发布时间:表示微博内容发布的具体时间
发布设备:表示内容发布使用的是什么设备
发布地点:表示发布的内容的地址大概在哪里
发布内容:表示发布的具体内容
用户名:表示发布的作者用户名称
用户id:表示发布者的微博id
性别:表示该用户的性别
个人简介:表示该用户的简单说明
关注人数:表示用户都关注了多少人
粉丝数:表示用户的粉丝数量
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

数据清洗:

经过上面的步骤,我们已经获取到了大概1300多条的微博数据。这里我是18号进行采集的,现在应该不止这些了。 数据获取以后,我们观察数据其实不难发现在“发布内容”那一栏存在一些前端的内容,包括表情包呀、一些特殊的字符呀。 其实这些数据并不是我们需要关注的,所以我们需要对其进行数据清洗,将这些信息给过滤掉
在这里插入图片描述
在这里插入图片描述
这里呢,TaoTao写了一些代码进行数据的过滤,过滤以后的数据呢如下:
在这里插入图片描述
使用上述的代码进行过滤以后的数据如下:
可以看到对比上面的原始数据,数据要整洁许多

在这里插入图片描述

数据可视化:

上面的两个步骤,我们进行了数据的获取和数据的清洗。现在获得的数据是比较整洁。数据整理好了以后,就方便进行数据可视化了。那么接下来就让我们进行数据可视化操作吧。
TaoTao这里呢,主要分析的大概是这么几个数据:

1、微博发布时间可视化
2、内容发布的地区可视化
3、内容发布地区top20统计
4、发布者的性别情况
5、发布内容的情感分析
6、关键词Top10
7、发布内容的词云统计

1、“微博发布时间可视化”:
为什么要统计微博发布时间,并进行数据可视化呢?其实TaoTao是这么想的,通过观察哪一个时间段微博发布的数量比较多,从某种程度上可以反应近期大家的情绪反应。微博的发布时间可视化具体如下:
可以看到在2024.1.10-2024.1.16这个期间发布关于“人口”这个话题的人比较多。后来了解到,有关部门大概是在1.16号左右发布了相关数据,所以大家反应的比较积极。
在这里插入图片描述
2、“发布内容地区可视化”:
通过对发布内容的地区进行可视化,我们可以在宏观上大概的看出来哪个地区对这个话题比较的感兴趣,具体如下所示。
在这里插入图片描述
3、“内容发布地区top20统计”:
上面的“发布内容地区可视化”是在宏观上进行数据可视化。这里提到的“内容发布地区top20统计”就可以比骄傲直观的看到具体的一个数据分布情况。具体的数据可视化如下所示:
从图上可以看出来,北京地区好像对这个话题比较感谢兴趣,山西地区对这个就没有那么感兴趣了。具体是什么原因,可以再做详细的分析。
在这里插入图片描述

4、“发布者性别统计”:
通过对发布者的性别统计可以大体的看出来好像男性比女性要更加关注这个话题。
在这里插入图片描述
5、“发布内容的情感分析”:
TaoTao这里对大伙发布的内容进行分析,下面是详细的分析结果:
从数据层面可以看出来,大家对于“人口”这个话题好像是偏向于乐观的。
在这里插入图片描述
6、“发布内容的top10关键词”:
关键词具体如下所示:
在这里插入图片描述
7、“发布内容词云”:
同样的TaoTao也对发布内容进行统计并且制作了词云,具体如下所示:
在这里插入图片描述

其他主题大屏

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
主题大屏其实有十多种,上述TaoTao已经实现了其中的三种,其他的感兴趣的小伙伴可以自己实现。
源码获取链接:【爬虫、数据可视化实战】以“人口”话题为例爬取实时微博数据并进行舆情分析
由于笔者能力有限,在某些表述方面难免有些不准确,还请多多包涵!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/243662.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单片机中MCU跑RTOS相比裸机的优势

经常有读者问关于RTOS的问题,比如:我现在要不要学习RTOS? 学习RTOS有什么好处? 我的项目要不要跑RTOS? 问这些问题,其实归根结底还是对RTOS理解的不够,项目开发的经验还不足等。针对这部分朋友…

鸿蒙自定义刷新组件使用

前言 DevEco Studio版本:4.0.0.600 1、RefreshLibrary_HarmonyOS.har,用于HarmonyOS "minAPIVersion": 9, "targetAPIVersion": 9, "apiReleaseType": "Release", "compileSdkVersion": "3.…

OpenHarmonyOS-gn与Ninja

GN语法及在鸿蒙的使用 [gnninja学习 0x01]gn和ninja是什么 ohos_sdk/doc/subsys-build-gn-coding-style-and-best-practice.md GN 语言与操作 一、gn简介 gn是generate ninja的缩写,它是一个元编译系统(meta-build system),是ninja的前端&am…

[AutoSar]BSW_OS 06 Autosar OS_Alarms

一、 目录 一、关键词平台说明一、Timer1.1 配置1.2Periodical Interrupt Timer (PIT)和High Resolution Timer (HRT) 二、Alarm 工作机制三、Code3.1创建一个15ms的runnable3.2mapping到basic task3.3生成代码 关键词 嵌入式、C语言、autosar、OS、BSW 平台说明 项目ValueO…

k8s学习-Deployment

Kubernetes通过各种Controller来管理Pod的生命周期 。 为了满足不同业 务 景 , Kubernetes 开发了Deployment、ReplicaSet、DaemonSet、StatefuleSet、Job等多种Controller。我们⾸先学习最常用Deployment。 1.1 Kubectl命令直接创建 第一种是通过kubectl命令直接…

R2DBC-响应式数据库

简单查询 基于全异步,响应式,消息驱动 用法: 1.导入驱动:导入连接池(r2dbc-pool),导入驱动(r2dbc-mysql) 2. 使用驱动提供的api操作 pom.xml <properties><r2dbc-mysql.version>1.0.5</r2dbc-mysql.version> </properties><dependencies><d…

实验:MySQL 客户端SocketTimeout 抓包分析

实验准备 服务端环境准备 服务器信息 阿里云 99 大洋白嫖机 $ cat /proc/version Linux version 5.15.0-83-generic (builddlcy02-amd64-027) (gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #92-Ubuntu SMP Mon Aug 14 09:30:42 UT…

Rocky Linux 8.9 安装图解

风险告知 本人及本篇博文不为任何人及任何行为的任何风险承担责任&#xff0c;图解仅供参考&#xff0c;请悉知&#xff01;本次安装图解是在一个全新的演示环境下进行的&#xff0c;演示环境中没有任何有价值的数据&#xff0c;但这并不代表摆在你面前的环境也是如此。生产环境…

《WebKit 技术内幕》学习之七(2): 渲染基础

2 网页层次和RenderLayer树 2.1 层次和RenderLayer对象 前面章节介绍了网页的层次结构&#xff0c;也就是说网页是可以分层的&#xff0c;这有两点原因&#xff0c;一是为了方便网页开发者开发网页并设置网页的层次&#xff0c;二是为了WebKit处理上的便利&#xff0c;也就是…

【表情识别阅读笔记】Towards Semi-Supervised Deep FER with An Adaptive Confidence Margin

论文名&#xff1a; Towards Semi-Supervised Deep Facial Expression Recognition with An Adaptive Confidence Margin 论文来源&#xff1a; CVPR 发表时间&#xff1a; 2022-04 研究背景&#xff1a; 对大量图片或视频进行手工标注表情是一件极其繁琐的事情&#xff0c;因此…

TCP高并发服务器简介(select、poll、epoll实现与区别)

select、poll、epoll三者的实现&#xff1a; select实现TCP高并发服务器的流程&#xff1a; 一、创建套接字&#xff08;socket函数&#xff09;&#xff1a;二、填充服务器的网络信息结构体&#xff1a;三、套接字和服务器的网络信息结构体进行绑定&#xff08;bind函数&…

2024 前端高频面试题之 HTML/CSS 篇

【前言】随着市场的逐渐恶劣&#xff0c;通过总结面试题的方式来帮助更多的coder&#xff0c;也是记录自己的学习过程&#xff0c;温故而知新。欢迎各位同胞大大点评补充~ 前端面试题之 HTML/CSS 篇 1、HTML 语义化&#xff1f;2、块级元素&内联样式3、盒子模型的理解&…

qml 2.8 布局练习

GreenSquare.qml import QtQuickRectangle {width: 100height: 100color: greenborder.color: Qt.lighter(color) } BlueSquare.qml import QtQuickRectangle {color: bluewidth: 50height: 50border.color: Qt.lighter(color)property alias text: label.text //将text开…

linux C语言socket函数send

在Linux中&#xff0c;使用C语言进行网络编程时&#xff0c;send函数是用于发送数据到已连接的套接字的重要函数之一。它通常用于TCP连接&#xff0c;但也可以用于UDP&#xff08;尽管对于UDP&#xff0c;通常更推荐使用sendto&#xff0c;因为它允许你指定目标地址和端口&…

Git学习笔记(第8章):IEAD实现GitHub操作(VSCode)

目录 8.1 VSCode登录GitHub账号 8.2 创建远程库 8.3 本地库推送到远程库(push) 8.4 远程库拉取到本地库(pull) 8.5 远程库克隆到本地库(clone) 8.1 VSCode登录GitHub账号 Step1&#xff1a;安装“GitHub Pull Requests and Issues”插件 Step2&#xff1a;登录GitHub账号 …

Yolov8不废话!参考手册!

Yolov8使用 yolo taskdetect modetrain modelyolov8n.pt args...classify predict yolov8n-cls.yaml args...segment val yolov8n-seg.yaml args...export yolov8n.pt formatonnx args...使用Ultralytics YOLO进行模型训练 …

pygame入门学习(四)位图的使用

大家好&#xff01;我是码银&#x1f970; 欢迎关注&#x1f970;&#xff1a; CSDN&#xff1a;码银 公众号&#xff1a;码银学编程 载入图片 pygame.image.load( )&#xff0c;Pygame 可以通过pygame.image.load( )函数处理位图文件。 大致可以支持以下文件&#xff1a;JPG…

一.Winform使用Webview2(Edge浏览器核心) 创建demo(Demo1)实现回车导航到指定地址

Winform使用Webview2创建demo1实现回车导航到指定地址 往期目录参考文档实现1.安装visual studio2.创建单窗口应用3.修改项目中的窗体名称MainForm4.添加按钮5.添加窗口Demo16.在Demo1中添加WebView2 SDK7.在Demo1窗体中选择添加textbox和webview28.在MainForm.cs窗体中添加but…

PyTorch 添加 C++ 拓展

参考内容&#xff1a;pytorch添加C拓展简单实战编写及基本功能测试 文章目录 第一步&#xff1a;编写 C 模块test.htest.cpp 第二步&#xff1a;编写 setup.py第三步&#xff1a;安装 C 模块第四步&#xff1a;验证安装第五步&#xff1a;C 模块使用test_cpp1.pytest_cpp2.py 运…

yolov8的目标检测、实例分割、关节点估计的原理解析

1 YOLO时间线 这里简单列下yolo的发展时间线&#xff0c;对每个版本的提出有个时间概念。 2 yolov8 的简介 工程链接&#xff1a;https://github.com/ultralytics/ultralytics 2.1 yolov8的特点 采用了anchor free方式&#xff0c;去除了先验设置可能不佳带来的影响借鉴General…