1
摘 要
新冠肺炎暴发以来,新闻媒体实时为公众通报疫情情况,人们几乎每天都
可以看到各个省市机构以及主流媒体发布的疫情实时动态数据。在整理疫情的
相关数据后,基于可视化平台对疫情数据进行展示,可以让人们能够更加快速、
直观地去了解疫情地相关数据和发展态势等信息。数据可视化,是指数据通过
与地图、热力图、散点图等多种图表形式结合,在特定的数字场景中,让观众
对问题有直观的视觉思维。
课题基于 Python 爬虫和数据可视化技术对基于爬虫技术的疫情可视化平台
进行了设计。通过 Python 爬虫实现对疫情数据的获取,并将数据保存在 MySQL
数据库中,然后通过 Python 编程语言 Django 框架进行了项目的整体实现,使
用 PyEcharts 实现了疫情相关数据的可视化。可视化平台实现后,人们可以通过
平台快速直观的了解到疫情的相关数据,极大的方便了人们的生活。
关键词:疫情数据;数据爬取;数据可视化平台
2
Abstract
Since the outbreak of COVID-19, news media have kept the public informed of
the epidemic situation in real time. People can see the real-time dynamic data of the
epidemic released by provincial and municipal institutions and mainstream media
almost every day. Data visualization is the combination of data with maps, thermal
maps, scatter charts and other forms of graphs in a specific digital scene, so that the
audience can have intuitive visual thinking about the problem. Therefore, after sorting
out the epidemic data, the visualization platform can be used to display the epidemic
data, enabling people to understand the epidemic data and development trend more
quickly and intuitively.
The project designed the epidemic data visualization platform based on Python
crawler and data visualization technology. Python crawler was used to obtain epidemic
data, and the data was stored in MySQL database. Then, the whole project was realized
by Python programming language Django framework, and the epidemic data
visualization was realized by Pyecharts. After the realization of the visualization
platform, people can quickly and intuitively learn the relevant data of the epidemic
through the platform, which greatly facilitates people's life.
Keywords: Epidemic data Data crawl Data visualization platform
3
目 录
摘 要 .............................................................I
Abstract ...........................................................II
第 1 章 绪论 .......................................................1
1.1 研究背景 ....................................................................................................1
1.2 研究目的和意义 ..........................................................................................2
1.2.1 研究目的 ...............................................................................................2
1.2.2 研究意义 ..............................................................................................2
1.3 研究现状 ......................................................................................................2
1.4 研究内容与目标 ..........................................................................................3
1.4.1 研究内容 ...............................................................................................3
1.4.2 预期目标 ...............................................................................................4
1.5 论文结构 ......................................................................................................4
第 2 章 可行性分析 .................................................6
2.1 技术可行性分析 ..........................................................................................6
2.1.1 Python 编程 ...........................................................................................6
2.1.2 MySQL 数据库 .....................................................................................6
2.1.3 爬虫技术 ..............................................................................................7
2.1.4 Django 框架...........................................................................................7
2.1.5 B/S 架构 ................................................................................................8
2.2 经济可行性 ..................................................................................................8
2.3 法律可行性 ..................................................................................................9
2.4 操作可行性 ..................................................................................................9
第 3 章 需求分析 ..................................................10
3.1 系统功能性需求分析 ................................................................................10
3.2 系统非功能性需求分析 ............................................................................10
3.2.1 完整性需求 ........................................................................................10
3.2.2 性能需求 ............................................................................................10
3.2.3 页面需求 ............................................................................................11
第 4 章 系统设计 ..................................................12
4.1 系统功能模块设计 ....................................................................................12
4.2 数据库设计 ................................................................................................13
4.2.1 数据库词条设计 ................................................................................13
4.2.1 数据库 E-R 图....................................................................................14
4.2.3 数据库表设计 ....................................................................................14
第 5 章 系统实现 ..................................................18
4
5.1 系统运行所需环境 ....................................................................................18
5.2 疫情数据更新模块的实现 ........................................................................18
5.2.1 功能描述 ............................................................................................18
5.2.2 实现步骤 ............................................................................................18
5.2.3 技术难点 ............................................................................................19
5.3 登录注册模块的实现 ................................................................................19
5.3.1 功能描述 ..........................................................................................19
5.3.2 实现步骤 ..........................................................................................20
5.4 疫情数据分析模块的实现 ........................................................................20
5.4.1 功能描述 ..........................................................................................20
5.4.2 实现步骤 ............................................................................................22
5.5 咨询管理模块的实现 ................................................................................23
5.5.1 功能描述 ............................................................................................23
5.5.2 实现步骤 ............................................................................................24
5.6 信息管理模块的实现 ................................................................................24
第 6 章 系统测试 ..................................................26
6.1 测试目的 ....................................................................................................26
6.2 测试用例表 ................................................................................................26
结 论 ............................................................29
致 谢 ............................................................30
参考文献 ..........................................................31
1
第 1 章 绪论
1.1 研究背景
2020 年初,新冠肺炎疫情的急速蔓延牵动着全国人民的心,大家停止了走
亲访友,一边在家自我防控,一边了解疫情动态。自新冠肺炎爆发以来,我们
几乎每天都可以看到各个省市机构以及主流媒体发布的疫情实时动态数据。这
些信息对于居民提高自我防护意识,做好疫情防控工作,起着至关重要的作用。
不得不提及的是,在互联网时代,大众信息获取的速度已经得到巨大提升,并
且打破了时空的限制。但是,我们所接触到的信息、数据的呈现方式,其实有
所不同。
文本+数字是疫情发布中主要的形式之一,在主流媒体的报道中,以及社交
平台上最为常见,其通常包含全国累计确诊病例、新增确诊病例、新增疑似病
例、新增死亡病例、新增治愈病例等重要关键数据。这类数据,往往配合着新
闻发布的方式出现,其有新闻传播及时、迅速的特点,能满足大众对于疫情整
体概况的迅速掌握。然而,往往受限于文本形式,导致数据的“堆砌感”强烈,
重点难以突出,受众在阅读体验上会有一定的压力。
如果说文本+数据的发布方式缺少了一点用户视角,那么图片式表格的出现,
刚好满足了大众对清晰直观信息数据的需求。尤其是在疫情爆发一段时间之后,
各个省市行政机构,开始将疫情数据按照地域逻辑进行梳理,比如将全国各个
省市、或是某地级市各个行政区域,用表格的方式呈现出来,用户在阅读体验
上有所提升,能更加直观清晰地获取关键信息。
显然,图片式表格已经初具视觉导向。这种形式往往比文本+数据的形式,
让大众相对更容易接受。而可视化的呈现方式,正是在图片式表格的基础上,
对数据更深层次的展现。
数据可视化,是指数据通过多种图表形式结合起来,在特定的数字场景中,
让观众对问题有直观的视觉思维。简而言之,优秀的可视化作品,可以做到让
大众“即看即懂”。例如腾讯微博在疫情期间对每天的新增新冠患者和死亡人数
的统计就采取了数据可视化的模式,使用户能够简单明了的对每日的变化进行
进一步的了解,节约了读者阅读时间和对时间的清晰度进行了解。随着社会的
快速发展,数据可视化必将成为当今社会的主流,受到各大媒体的追捧的板书
和成千上万用户的清莱,给读者减轻阅读带来的压力,从而提高阅读的效率。