从百度提供的疫情数据网站下载,只针对该网站具体到省的数据
import requests
url = 'https://voice.baidu.com/newpneumonia/getv2?from=mola-virus&stage=publish&target=trend&isCaseIn=1&area=%E8%BE%BD%E5%AE%81&callback=jsonp_1652526814976_84234'
response = requests.get(url).text
获取的字符串经过处理后可以转为json
import json
results = json.loads(results)
根据需要获取自己所需内容,并使用pandas将数据转为表格类型
import pandas as pd
# 获取省份名称,日期和确诊人数
provinceName = results["data"][0]["name"]
trend = results["data"][0]["trend"]
updateDate = trend["updateDate"]
confirmAll = trend["list"][0]
# 将其按照日期保存为列表
dataList = []
for i in range(dataLen):
dateTemp = updateDate[i]
confirmAllTemp = confirmAll[i]
dataList.append(
[dateTemp, confirmAllTemp])
# 使用pandas
df = pd.DataFrame(dataList)
df.columns = ["日期", "累计确诊"]
# 输出到excel
df.to_excel('output.xlsx', index=None)
可以将不同省份保存在不同的sheet中,在保存前后使用writer
writer = pd.ExcelWriter("output.xlsx")
……
df.to_excel(writer, index=None, sheet_name=provinceName)
……
writer.close()