一、前言嗨嘍,大家好呀,這里是魔王~ 疫情降臨轉(zhuǎn)眼已經(jīng)第三年了,時間過得真快,愿疫情早點結(jié)束,世界不再多災(zāi)多難。 最近疫情稍微好轉(zhuǎn)一些了,所以咱們獲取一下最新的疫情數(shù)據(jù),做個可視化地圖看看。 話不多說,我們直接先來一波效果展示 二、效果獲取到的數(shù)據(jù)咱們保存到表格![]() 可視化地圖顏色是跟網(wǎng)上的一樣,可以跟隨鼠標(biāo)移動變色,展示數(shù)據(jù)的。 ![]() 還可以實現(xiàn)這種更好看的 ![]() 柱狀圖![]() 效果看過了,現(xiàn)在我們來準(zhǔn)備實現(xiàn)它叭~ 三、準(zhǔn)備工作涉及知識點
開發(fā)環(huán)境
實現(xiàn)流程
前四步的話,基本大部分*蟲都是如此。 四、代碼展示又到了緊張刺激的環(huán)節(jié)了,嘿嘿~ 獲取數(shù)據(jù)部分import requests # 發(fā)送請求 第三方模塊 額外安裝吧import re # 內(nèi)置模塊 無需安裝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.這里加上我國網(wǎng)民最常用的那個網(wǎng)站地址/act/newpneumonia/newpneumonia/?from=osari_aladin_banner'# 1. 發(fā)送請求# x=1,y=2response = requests.get(url=url, headers=headers)# 2. 獲取數(shù)據(jù)# <Response [200]>: 訪問成功html_data = response.text# print(html_data)# 3. 解析數(shù)據(jù) 正則# a. 告訴他 我們要怎么查找 'component':\[(.*?)\]# b. 我們在哪里查找源碼、解答、資料、教程可加:261823976免費獲取~# 正則會把所有能匹配到的數(shù)據(jù)都會給到我們# (.*?)# .*匹配任意字符 0次或者多次# ? 非貪婪匹配符json_str = re.findall(''component':\[(.*)\],', html_data)[0]# 類型 轉(zhuǎn)化一下 字典json_dict = json.loads(json_str)caseList = json_dict['caseList']for case in caseList: area = case['area'] # 省份 curConfirm = case['curConfirm'] # 確診人數(shù) curConfirmRelative = case['curConfirmRelative'] # 當(dāng)前確診 confirmed = case['confirmed'] # 累計確診 crued = case['crued'] # 治愈人數(shù) died = case['died'] # 死亡人數(shù) 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]) 可視化部分
這里只有第一種可視化效果,其它的都是ipynb 格式的,我懶得打開了~ 尾語成功沒有快車道,幸福沒有高速路。 所有的成功,都來自不倦地努力和奔跑,所有的幸福都來自平凡的奮斗和堅持 ——勵志語錄 本文章就寫完啦~感興趣的小伙伴可以復(fù)制代碼去試試 |
|