前言
大家早好、午好、晚好吖~
最近,又爆出了许多例,身在长沙得我前段时间不是在做核酸就是在做核酸得路上
虽然现在还是隔一天一捅(小声哔哔:我真的遭不住)希望疫情早日过去
疫情尚未结束,我们需要做好自己,时刻防范,不给别人添麻烦。
今天我们来尝试用Python抓取世界疫情,实现可视化地图展示。
采集数据
1、数据来源
数据来源于TX新闻,链接展示不了,就只贴图了。
2、模块
import requests
import csv
requests
发送请求模块, 是第三方模块,需要手动安装。
win + r
输入cmd
按回车打开命令提示符窗口,使用pip
安装
csv
是内置模块,无需安装。
pip install requests
3、代码展示
获取网页url ,我这里网址屏蔽了,不然不给过。
url = 'https://****com/newsqa/v1/automation/modules/list?modules=FAutoCountryConfirmAdd,WomWorld,WomAboard'
发送请求
response = requests.post(url)
获取数据
json_data = response.json()
解析数据
WomAboard = json_data['data']['WomAboard']
for i in range(0, len(WomAboard)):
name = WomAboard[i]['name']
confirm = WomAboard[i]['confirm']
confirmAdd = WomAboard[i]['confirmAdd']
heal = WomAboard[i]['heal']
dead = WomAboard[i]['dead']
print(name, confirm, confirmAdd, heal, dead)
保存数据
f = open('疫情数据.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.writer(f)
csv_writer.writerow([name, confirm, confirmAdd, heal, dead])
4、效果展示
完整代码及国内疫情数据抓取代码、视频讲解直接点击下方自取即可。
点击 蓝色字体 自取,我都放在这里了。
数据可视化
1、效果展示
接下来看看生成好的可视化世界疫情地图
由于地图是动态的,我就直接截图了,大家可以自己实践一下制作地图详细看。
2、代码展示
模块
import pandas as pd # 做表格操作的模块
from pyecharts.charts import Map # 绘图的模块
from pyecharts import options as opts
导入数据
df = pd.read_csv('疫情数据.csv')
name = df['name'].tolist()
confirm = df['confirm'].tolist()
print(name)
print(confirm)
c = (
Map(init_opts=opts.InitOpts(width='1400px', height='600px'))
.add("累计确诊", [list(z) for z in zip(name, confirm)], "world", name_map=name_map, is_map_symbol_show=False)
.set_series_opts(label_opts=opts