admin管理员组

文章数量:1539114

2024年5月11日发(作者:)

基于Python的疫情数据的爬取与分析

作者:谭康裕 赵元成

来源:《科学导报·学术》2020年第30期

摘 要:目的:直观显示新型冠状病毒(2019-nCoV)肺炎疫情的发展趋势,为复工复产的

决策提供决策依据。方法:基于Python语言、使用requests库下载网页,使用re读取目标数

据,使用csv存储目标数据、使用pyecharts展示疫情地图分布和疫情发展趋势图、使用

Javascript脚本显示趋势图,包括疫情的地图分布,全国疫情新增趋势,全国累计/疑似趋势,

全国累计治愈/死亡趋势,全国各省疫情概览表等。结果:得到疫情发展趋势的可视化图表,

可以直观显示疫情的发展趋势,全国各省疫情概览表等。我们可以看到,疫情已经趋于平稳。

结论:2019-nCoV肺炎疫情的防控措施是有效的,各地方政府严格执行公共安全政策,保证了

人民的生命安全,全力遏制了2019-nCoV的传播,夺取了战“疫”的最终胜利。

关键词:新型冠状病毒;Python;数据可视化;趋势

新型冠状病毒(2019-nCoV)是一种β属的冠状病毒,自2019年12月在湖北省武汉市发

现 2019-nCoV以来,疫情快速蔓延[1]。国家卫生健康委员会疫情通报显示,截至 2020年4月

25日早上9点,累计确诊人数 82816人,累计治愈出院病例77346例,累计死亡病例4632例

[2]。为快速抑制病情蔓延,国家已出台多种举措,如延长春节假期、企业延迟复工、学校延

期开学、限制出行、公共场所要佩戴口罩,居家隔离等。本文基于Python,通过网络爬虫技术

收集2019-nCoV疫情数据,通过数据可视化手段,给出疫情的地图分布,全国疫情新增趋

势,全国累计/疑似趋势,全国累计治愈/死亡趋势,全国实时疫情概览表等。

1 对象与方法

1.1 数据来源

本文疫情发展数据取自中国疾病预防控制中心周报(以下简称中国疾控中心周报)和丁香

园,其地址参看“参考文献”中的[2]和[3]。随着2019-nCoV的快速传播,自1月25日开始,各

地纷纷启动“重大突发公共卫生事件Ⅰ级响应”,因此我们认定从1月25 日开始,病毒即进入

传播状态。由于数据是从中国疾病预防控制中心周报中读取,比较完整的数据是从1月29日

开始,因此,本次采集的数据就是从1月29日开始,直至4月25日零点。

1.2 疫情数据提取的需求

设计疫情数据提取的代码要解决的以下几个问题:

(1)下载网页:根据给定的URL下载其HTML网页。

(2)网页解析:根据网页结构信息,提取网页数据。

(3)数据存储:把从网页中解析出来的数据CSV文件中。

1.3 疫情数据提取的實现方法

(1)HTML下载器

本次设计使用requests库和requests-html库来下载网页,分别使用requests来下载中国疾

病预防控制中心周报的数据,使用requests-html来下载丁香园的数据。使用requests-html下载

网页的核心代码如下所示:

import requests

url = 'http:///news/'

r = (url) #下载网页

使用requests-html下载网页的核心代码如下所示:

from requests_html import HTMLSession

dxyurl = 'https:///newh5/view/pneumonia'

response = (dxyurl) #下载网页

(2)HTML解析器

Python使用BeautifulSoup来进行HTML的解析,提取目标数据。在中国控制中心周报

中,我们使用BeautifulSoup直接读取其注释部分,而不是按行读取目标数据所在的XPath。在

中国控制中心周报网页中,目标文本是位于标签

中的注释文

本。通过分析中国控制中心周报网页数据结构,我们可以通过分割

标签,同时为了数据的

提取,还要把

标签添加回原来的数据项中。提取数据的代码如下:

soup = BeautifulSoup(page,'')

content = _all("div",'box-article-content') #数据返回为列表

content_to_string = str(content) #将列表转换成字符串,使用正则表达式提取

pattern = e(r"<!--(.*?)-->") # 抽取<!--(.*?)-->中间的文本

通过构建正则表达式,提取网页中的疫情数据。提取的疫情数据分别为日期、新增确诊/

疑似病例、累计确诊/现存疑似病例、新增死亡/治愈人数、累计死亡/治愈人数。其正则表达式

的构建如下所示:

date_regex = r"(.*?)<" #提取日期的正则表达式

conf_suspe_data_regex = r"

Confirmed cases:(.*?)new,(.*?)total. Suspected

cases:(.*?)new,(.*?)total.<" #提取新增确诊/疑似病例、累计确诊/现存疑似病例的正

则表达式

dea_reco_data_regex = r"

Deaths:(.*?)new,(.*?)total. Recoveries:(.*?)

new,(.*?)total.<" #提取新增死亡/治愈人数、累计死亡/治愈人数的正则表达式

在丁香园的网页中,通过查看网页元素,我们可以看到,目标数据在标签

这部分需要在后端代码中添加相应的文件路径,实现前后端的关联。在根目录处需要添加

文件其核心代码如下的示:

@("/")

def index():

content = table_base()

return render_template("",content=content)

使用pyecharts用于生成 Echarts 图表之后,也要添加相应的URL才能展示在前端上,其

核心代码如下所示:

@("/mapChart") #对应文件添加URL,此处文件为中国地图

def get_map_chart( ):

c = map_base( )

return _options_with_quotes( )

对于其他使用pyecharts生成的图表,包括新增死亡/治愈、累计确诊/疑似、累计死亡/治愈

的发展曲线,都是使用前后端关联的方法,展示到前端页面上,使结果直观呈现出来。

3 结果

3.1 全国疫情地图分布

使用pyecharts生成的地图信息如下,从图中我们可以看到省份在这次疫情中的数据分

布,本次采集显示的数据分别为确诊人数、治愈人数和死亡人数。

3.2 全国新增确诊/疑似发展曲线

使用pyecharts生成的新增确诊/疑似发展曲线如下图所示:

4 讨论

本文应用Python进行对数据的爬取,根据中国疾控中心周报和丁香园中的数据生成显示

图表,得出本次疫情相关数据的走势图,并结合实际生活中情况,可以看到:在春运的期间,

新冠病毒在人口迁移过程中出现大规模的传播。经过3个多月的抗“疫”战争,病毒被成功遏

制,处于可控范围内,为世界防疫工作做出了一个典范,但防疫工作仍不可松懈,在常态化的

防控疫情的情况下,继续要严格依照国家公共卫生政策,做好持久化防疫的做准备,守住抗

“疫”胜利的果实。

参考文献

[1] 耿辉,徐安定,王晓艳,张勇,尹小妹,马茂,吕军.基于SEIR模型分析相关干预措

施在新型冠状病毒肺炎疫情中的作用[J/OL].暨南大学学报(自然科学与医学版):1-7[2020-

04-26].http:///kcms/detail/.

[2] 中国疾病预防控制中心.CCDCWeekly[EB/OL].[2020-0426].http:

///news/.

[3] 丁香园. [EB/OL].[2020-04-26].https:///ncovh5/view/pneumonia.

[4] 范传辉. Python爬虫开发与项目实践[M].北京:机械工业出版社. 2017.6:140-146

本文标签: 数据疫情使用网页

更多相关文章

xp系统

网页中QQ常用代码

1天前

文章目录 1. 点击链接打开会话窗口2. 点击链接添加好友3. 点击加群4. 手机中网页点击链接打开指定会话窗口5. Android中打开指定QQ会话窗口6. Android中打开指定应用程序7. 获取QQ头像 1. 点击链接打开会话窗口

网页提示此站点不安全解决方案

1天前

网页提示此站点不安全解决方案 如果电脑可以正常上网&#xff0c;qq&#xff0c;微信可以正常使用&#xff0c;部分网页打不开&#xff0c;提示此站点不安全&#xff0c;而且也无法加载网页

行业、地区返回json数据

1天前

国家省市区三张表&#xff0c;给前台返回json是数组套数组形式 ** * 地区 * param request * param response * param parentId * param commonAreaDto *

python如何读取mat文件可视化_python 数据分析--数据可视化工具matplotlib

1天前

说明: 数据可视化中的数据集下载地址:&#xff08;数据来源:从零开始学python数据分析和挖掘&#xff09; 链接&#xff1a;https:pan.baidus1zrNpzSNVHd8v1rGF

股票交易数据获取

1天前

一、访问baostock官网 http:baostock 二、使用命令安装 pip install baostock -i https:pypi.tuna.tsinghua.edusimple --trusted-hos

类别不平衡数据的处理

1天前

1.不平衡学习的基本概念及处理方法分类&#xff1a;http:www.360doccontent1710230942392246_697348454.shtml 重点学习&#xff1a;分类中解决类别不平衡

CnOpenData Glassdoor美国上市公司面试者评价数据

21小时前

除了股东、债权人、政府等外部利益相关者外&#xff0c;员工的利益更应该得到公司的恰当保护&#xff0c;因为员工才是公司创造价值的真正主体。提高企业在产品市场的竞争力&#xff0c;首先就是要提高员工对企业的满意度

360浏览器保存网页html5,360浏览器怎么保存整个网页为图片?

18小时前

360浏览器怎么保存整个网页为图片&#xff1f;360浏览器是国内常用的浏览器&#xff0c;我们可以使用360浏览器对网页进行截图&#xff0c;但是截不全&#xff0c;遇到一些有用的网页&#x

360html怎么保存,360浏览器网页怎么保存电脑桌面上

18小时前

把个人喜欢的网页保存到桌面&#xff0c;下次直接进入网页就十分便捷了&#xff0c;以下就是网页保存到桌面的几种方法&#xff1a; 方法一&#xff1a; 1、打开360浏览器&#xff0c;选择

如何清除360网站服务器缓存,360浏览器怎么清除缓存 360浏览器打不开网页怎么办...

18小时前

360安全浏览器超速版8.2.1.348官方最新版 类型&#xff1a;浏览器类大小&#xff1a;46.8M语言&#xff1a;中文 评分&#xff1a;8.9 标签&#xff1a; 立即下载 当我

《Windows安全机制》之DEP(数据执行保护)

15小时前

介绍 DEP的主要作用是阻止数据页(默认的堆,栈以及内存池页)执行代码。分为软件DEP和硬件DEP,其中软件DEP就是SafeSEH。而硬件DEP操作系统会通过设置内存页的NXXD属性标记是否运行在本页执行指令。 DEP 机制的保护原

yolo图像检测数据集格式转换:xml 与 txt格式相互转换

10小时前

格式介绍 一图流介绍的比较详细&#xff0c;一般图像检测数据集格式为txt或者xml格式&#xff0c;在使用labelimg进行标注的时候&#xff0c;可以设置获得不同格式的数据集&#xff0c;以满足

FME巧用WorkspaceRunner转换器,动态调用dwg模板文件,解决批量处理dwg数据时,输出数据后出现图形样式丢失问题

9小时前

使用FME进行dwg数据处理&#xff0c;在输出数据时&#xff0c;需要设置dwg模板文件&#xff0c;才能正确保留图形样式。但是在进行批量处理时&#xff0c;如果没有一个涵盖所有dwg数据样式的模板

网页乱码原因查看

8小时前

1、浏览器编码检查 以谷歌浏览器为例 不添加插件&#xff1a;F12--控制台输入document.charset 查看网页源码编码方式&#xff0c;看是否同步&#xff0c;不同步需修改浏览器编码&

浏览器兼容模式怎么设置?4个提升网页兼容性秘笈分享!

8小时前

“不知道怎么回事&#xff0c;我打开浏览器的时候总是显示浏览器不兼容&#xff0c;是什么情况呢&#xff1f;我应该怎么操作才能解决这个问题呀&#xff1f;” 浏览器兼容模式是一种使浏览器能够更好地显示

谷歌浏览器配置(加密与解密笔记):chrome数据数据设置

6小时前

谷歌chrome下载地址&#xff1a;https:www.googleintlzh-CNchrome 浏览器的数据处理 1.访问Chrome:Version&#xff0c;得到浏览器的信息如下&#x

html看图识颜色,谷歌浏览器插件Color Picker 网页颜色拾色器 图片颜色识别插件

6小时前

Cool Color Picker for chrome browser. Extension allows you to quickly pick any color on any website using so-called “eye

使用谷歌浏览器调试手机网页

5小时前

使用谷歌浏览器调试手机网页 方式1&#xff1a;控制台使用手机模拟器 方式2&#xff1a;这种方法仅供特殊情况下使用&#xff0c;因为重启Chrome将不能恢复正常User-Agent(需要将全部打开的chro

google浏览器chrome用户数据(拓展程序,书签等)丢失问题

5小时前

一、问题背景 我出现这个情况的问题背景是&#xff1a;因为C盘块满了想清理一部分空间&#xff08;具体看这&#xff1a;windows -- C盘清理_c盘softwaredistribution-CSDN博客

plsql 删除一直在执行_固态硬盘开启Trim后,删除数据究竟能不能恢复?

2小时前

固态硬盘其实是闪存存储硬盘系列的一个俗称(SSD)&#xff0c;近些年闪存存储发展迅速&#xff0c;一些企业级的固态硬盘容量能够达到10T以上容量&#xff0c;在速度和存储密度上的优势逐渐盖过传统的机械硬盘。

发表评论

全部评论 0
暂无评论