当前位置: 首页 > 编程技术 > 正文内容

【说站】Python获取最新疫情数据实现动态地图实时展示各地情况

yc8882年前 (2022-07-26) 编程技术431

疫情降临转眼已经第三年了,时间过得真快,愿疫情早点结束,世界不再多灾多难。最近疫情稍微好转一些了,所以咱们获取一下最新的疫情数据,做个可视化地图看看。

效果展示

获取到的数据咱们保存到表格

Python获取最新疫情数据实现动态地图实时展示各地情况

可视化地图

颜色是跟网上的一样,可以跟随鼠标移动变色,展示数据的。

Python获取最新疫情数据实现动态地图实时展示各地情况

还可以实现这种更好看的

Python获取最新疫情数据实现动态地图实时展示各地情况

以及柱状图

Python获取最新疫情数据实现动态地图实时展示各地情况还等什么,我们直接开始把~

准备工作

涉及知识点

  1. 爬虫基本流程

  2. requests 发送请求

  3. re 正则表达式

  4. json 结构化数据解析

  5. pyecharts 可视化

开发环境

python 3.8: 解释器pycharm: 代码编辑器

实现流程

  1. 发送请求

  2. 获取数据

  3. 解析数据

  4. 保存数据

  5. 可视化分析

前四步的话,基本大部分*虫都是如此。

具体操作,我就不详细写了,这个视频第56集有详细讲,前面几集也有基本思路,可以说很全面。

代码总是学完就忘记?100个爬虫实战项目!让你沉迷学习丨学以致用丨下一个Python大神就是你!

每次都写流程,有人看还好,没人看的话,或者看了又没人点赞收藏,就渐渐的没动力了。

索性直接用视频讲解放在那里,嘿嘿~

不过不要慌,代码里我都写了注释的。Python获取最新疫情数据实现动态地图实时展示各地情况

代码展示

又到了紧张刺激的环节了

1、获取数据部分

import requests # 发送请求 第三方模块 额外安装吧import re # 内置模块 无需安装import jsonimport csv# 伪装 字典headers = {# 浏览器基本信息'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36'}with open('data.csv', mode='a', encoding='utf-8', newline='') as f:csv_writer = csv.writer(f)csv_writer.writerow(['area', 'curConfirm', 'curConfirmRelative', 'confirmed', 'crued', 'died'])url = 'https://voice.这里加上我国网民最常用的那个网站地址/act/newpneumonia/newpneumonia/?from=osari_aladin_banner'# 1. 发送请求# x=1,y=2response = requests.get(url=url, headers=headers)# 2. 获取数据# <Response [200]>: 访问成功html_data = response.text# print(html_data)# 3. 解析数据 正则# a. 告诉他 我们要怎么查找 "component":\[(.*?)\]# b. 我们在哪里查找# 正则会把所有能匹配到的数据都会给到我们# (.*?)# .*匹配任意字符 0次或者多次# ? 非贪婪匹配符json_str = re.findall('"component":\[(.*)\],', html_data)[0]# 类型 转化一下 字典json_dict = json.loads(json_str)caseList = json_dict['caseList']for case in caseList:area = case['area'] # 省份curConfirm = case['curConfirm'] # 确诊人数curConfirmRelative = case['curConfirmRelative'] # 当前确诊confirmed = case['confirmed'] # 累计确诊crued = case['crued'] # 治愈人数died = case['died'] # 死亡人数print(area, curConfirm, curConfirmRelative, confirmed, crued, died)with open('data.csv', mode='a', encoding='utf-8', newline='') as f:csv_writer = csv.writer(f)csv_writer.writerow([area, curConfirm, curConfirmRelative, confirmed, crued, died])

2、可视化部分

import pandas as pdfrom pyecharts.charts import Mapfrom pyecharts import options as optsdf = pd.read_csv('data.csv', encoding='utf-8')china_map = (Map().add('现有确诊', [list(i) for i in zip(df['area'].values.tolist(), df['curConfirm'].values.tolist())], 'china').set_global_opts(title_opts=opts.TitleOpts(title='各地区确诊人数'),visualmap_opts=opts.VisualMapOpts(max_=200, is_inverse=True)))china_map.render('demo.html')

这里只有第一种可视化效果,其它的都是ipynb 格式的,我懒得打开了~


本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!


从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!


本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。


本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。


若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。


本文链接: https://www.10zhan.com/biancheng/7438.html

标签: Python
分享给朋友:
返回列表

上一篇: 【说站】使用systemctl配置dnspod-shell实现ddns

下一篇: 【说站】PHP使用Openssl实现本地生成csr、key、crt证书文件

“【说站】Python获取最新疫情数据实现动态地图实时展示各地情况” 的相关文章

【说站】用一句话就可以去除宝塔面板操作上的二次验证

【说站】用一句话就可以去除宝塔面板操作上的二次验证

用过宝塔的朋友应该都会发现,现在宝塔面板有些鸡肋的功能,删除文件、删除数据库、删除站点等操作都需要做计算题!不仅加了几秒的延时等待,还无法跳过!这时候就会有朋友在想,如何去除宝塔面板的二次验证,此篇文...

【说站】利用Webhook实现Java项目自动化部署

【说站】利用Webhook实现Java项目自动化部署

用webhook就能实现Java项目自动部署,其实原理很简单。费话不多说,直接往下看教程。1. 创建gitee仓库并初始化2. 在linux安装git3. 在宝塔的软件的商店里下载Webhook4....

【说站】电脑安装MySQL时出现starting the server失败原因及解决方案

【说站】电脑安装MySQL时出现starting the server失败原因及解决方案

今天在安装MySQL时出现starting the server失败,经过查询分析得出以下结论,记录一下操作步骤。原因分析:如果电脑是第一次安装MySQL,一般不会出现这样的报错。如下图所示。star...

【说站】Java从resources读取文件内容的方法有哪些

【说站】Java从resources读取文件内容的方法有哪些

本文主要介绍的是java读取resource目录下文件的方法,比如这是你的src目录的结构├── main│ ├── java│ │ └── ...

【说站】linux中redis如何以redis用户重启?

【说站】linux中redis如何以redis用户重启?

通过上图我们可以看到,目前状态是已经以 redis 用户启动着,我想修改下 redis 的密码,然后怎么以 redis 用户重启呢?redis 是 nologin 用户,不能通过 su redis 切...

【说站】使用systemctl配置dnspod-shell实现ddns

【说站】使用systemctl配置dnspod-shell实现ddns

这个是毛子路由器上用的脚本,由于碳云的nat服务器公网IP不断的变,因此只好通过ddns来稳定连接nat服务器了。顺便水一篇文章,大家新年快乐。使用前需要将域名添加到 DNSPod 中,并添加一条A记...

深圳SEO优化公司宝鸡网站推广工具哪家好淮北网站优化软件多少钱商洛网站设计价格包头关键词按天计费多少钱襄阳企业网站设计呼和浩特网站搜索优化价格张北至尊标王价格甘孜建站报价汕头阿里店铺运营推荐三明网站推广系统哪家好柳州建站报价邯郸关键词排名包年推广株洲关键词按天计费哪家好自贡企业网站制作推荐天门模板制作哪家好民治网页设计报价石家庄百姓网标王报价遂宁网站定制报价金华百度标王报价襄阳建设网站推荐临汾网络推广哪家好宝安企业网站建设公司哈尔滨营销型网站建设推荐梧州网站定制洛阳网站制作多少钱黄冈网站制作设计报价荆州网站定制公司蚌埠营销网站兰州企业网站制作推荐那曲至尊标王哪家好歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化