如何直接由 GitHub 載入資料
以 Johns Hopkins COVID-19 Repository 為例
Published in
5 min readMar 23, 2020
TL; DR 摘要
這篇文章快速記錄如何直接由公開的 GitHub Repository 將指定檔案複製到本機端,以 Python 和 Johns Hopkins COVID-19 Repository 為例。
為何想直接由 GitHub Repository 載入資料
過往如果有想要從 GitHub Repository 獲取程式碼,都是習慣以 git clone
指令將整個專案複製到本機端,過往比較少情境碰到會將 Repository 拿來儲存資料並且時常更新,其實不是很清楚如果只想將 Repository 中的單個檔案複製到本機端該如何進行。
近期我想讓學生以 Tableau 實踐 Johns Hopkins 的中國武漢新冠肺炎儀表板,檢視資料來源時發現 JHU 的團隊每天都會新增或更新 Repository,要完成儀表板大致會需要這兩個資料夾中最新的 csv 檔案:
- COVID-19/csse_covid_19_data/csse_covid_19_time_series
- COVID-19/csse_covid_19_data/csse_covid_19_daily_reports
因此衍生了只想從專案中複製少數幾個檔案到本機端的需求,如果能不落地直接抵達分析環境更好,這篇文章會用 Python 完成這個需求。
使用 requests 發送 GET 請求
稍微查詢一下之後發現這個需求很容易就可以辦到!在專案中尋找到想要直接載入的資料,點選 Raw 前往資料所在網址(raw.githubusercontent.com),得知應該對哪個位址發送 GET 請求。
用 requests 發送 GET 請求並印出回應的狀態碼與文字。