使用用友提供的新冠肺炎實時數據,登陸註冊以後能夠無償使用。html
這裏的AIPCODE,複製並保存,用於後續的使用。java
用友有提供一個 eclipse 的使用說明。
python
本文采用 IDEA 搭建 Maven 進行使用git
能夠參考 Maven 環境配置,按照配置很簡單,記住按照路徑便可,方便後續使用github
選爲更改下載的 maven 的路徑,可能須要安裝什麼,等待他安裝完成便可。
apache
更改成本地的JDK,不然可能會提示版本問題。
json
在 pom.xml 中引入,點擊Import Changes,等待安裝完成api
<dependencies> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20180130</version> </dependency> </dependencies>
將用友提供的疫情全球代碼複製進去。
app
這裏更改成剛剛保存的 API 碼便可。echarts
若是代碼有錯誤提示,根據 IDEA 提供的更改建議進行更改。就一處錯誤。而後運行。
成功獲取到數據。
若是出現版本錯誤,再按剛剛的步驟看一下哪一個版本沒有更改。
在getRequest函數中進行調用。
再次運行,就會發現得到了一個 Cov2019.json 文件
private static void saveDataToFile(String data) { BufferedWriter writer = null; File file = new File("cov2019.json"); //若是文件不存在,則新建一個 if(!file.exists()){ try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } //寫入 try { writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file,false), "UTF-8")); writer.write(data); } catch (IOException e) { e.printStackTrace(); }finally { try { if(writer != null){ writer.close(); } } catch (IOException e) { e.printStackTrace(); } } System.out.println("文件寫入成功!"); }
數據處理使用 PyCharm 進行。
更改 python 的環境
json 文件主要是層級遞進的關係,咱們須要的是 country 部分
因此咱們可使用 Json 庫進行處理。
在處理的過程當中會發現,每一個洲其實都有一個 country 部分
因此咱們須要先去除每一個洲,而後再提取美國國家數據。
處理成方便後續可視化的格式。
# -*- coding = utf-8 -*- # @Time :2021-02-19 0:31 # @Author: LinJH # @File : DealData.py # @Software: PyCharm import json def DealFile(): with open('../GetData/cov2019.json', 'r', encoding="utf-8")as f: data = json.load(f) # print(data) DealDate(data) # 初步提取數據 def DealDate(data): data = data["data"]["continent"] Asia = data[0]["country"] Europe = data[1]["country"] NorthAmerica = data[2]["country"] SouthAmerica = data[3]["country"] Africa = data[4]["country"] Oceania = data[5]["country"] country = Asia + Europe + NorthAmerica + SouthAmerica + Africa + Oceania DealCountry(country) # 數據格式進行處理 def DealCountry(country): for i in range(len(country)): name = country[i]["provinceName"] value = country[i]["confirmedCount"] ChangeDate(name, value) countryList = [] LList=[] def ChangeDate(name, value): # 讀取國家名稱中文轉英文數據 with open('countryC2E.json', 'r', encoding='utf-8') as f: c2e = json.load(f) try: countryDict = {} countryDict["name"] = c2e[name] countryDict["value"] = value countryList.append(countryDict) except: LList.append(name) # 數據保存 def SaveDate(country): # DataDict={} # DataDict["data"] = country with open("cov2019_deal.json", 'w', encoding="utf-8") as f: json.dump(country, f) print("保存成功!") if __name__ == '__main__': DealFile() SaveDate(countryList)
沒作動態加載的,單一視圖。