首先到https://data.gov.tw搜尋「空氣品質指標」,或是直接連結資料集https://data.gov.tw/dataset/40448
▲下載CSV檔案
▲將CSV存檔至project所在的目錄
▲在pycharm打開CSV後,可安裝Install plugins,較有可讀性
接下來這個範例要先安裝2個外部的packages(套件)
▲不過pycharm表示已經安裝(咦?!)
相關文章:
https://pypi.org/project/urllib3/
https://urllib3.readthedocs.io/en/latest/user-guide.html
#程式碼開始
from tkinter import * import urllib3 #外部的packages import certifi #https的連線方式 def main(): w=Tk() w.title("範例一") w.geometry("500x300") #沒有設定寬x高,將依元件調整視窗大小 Button(w,text="下載資料",command=downloadAQI).pack(side=LEFT,ipadx=25,ipady=25,expand=YES) w.mainloop() def downloadAQI(): print("開始下載資料") CSV_URL="https://data.epa.gov.tw/api/v1/aqx_p_432?limit=1000&api_key=9be7b239-557b-4c10-9775-78cadfc555e9&format=csv" http=urllib3.PoolManager(cert_reqs='CERT_REQUIRED',ca_certs=certifi.where()) #建立https連線 #如下載網址為http://....則建立http連線為:http = urllib3.PoolManager() response = http.request('GET', CSV_URL) #使用GET方法儲存 if response.status == 200: print("下載成功") print(response.data) else: print("下載失敗") return #中斷,跳出downloadAQI if __name__ == "__main__": main()
#程式碼結束
▲執行時會出現視窗,請點選「下載資料」按鈕
▲執行結果
如果要將資料儲存至專案,請使用python內鍵的函數open(),建立file實體進行檔案儲存。以下僅列出downloadAQI之內容:
def downloadAQI(): print("開始下載資料") CSV_URL="https://data.epa.gov.tw/api/v1/aqx_p_432?limit=1000&api_key=9be7b239-557b-4c10-9775-78cadfc555e9&format=csv" http=urllib3.PoolManager(cert_reqs='CERT_REQUIRED',ca_certs=certifi.where()) #建立https連線 #如下載網址為http://....則建立http連線為:http = urllib3.PoolManager() response = http.request('GET', CSV_URL) #使用GET方法儲存 if response.status == 200: print("下載成功") #儲存檔案,建立file實體 file=open("空氣品質指標.csv","wb") file.write(response.data) print("存檔成功") file.close() #關閉檔案 else: print("下載失敗") return #中斷,跳出downloadAQI
▲執行結果&程式異動處
全站熱搜