Link Search Menu Expand Document

EARR 數據批次下載

Table of contents

背景

  • EARR數據儲存在哈佛大學的資料網站(https://dataverse.harvard.edu/),以連結方式呼叫js程式自動下載,並沒有明顯的網址。
  • 經檢視網頁原始碼(tree樹枝顯示),發現其網址(7碼數字之檔名)與正確檔名之間,為一json段落所控制。
  • 將其段落複製另存新檔,以一python程式進行逐一下載如下。

EARR檔案下載

檔名規則

  • 數字檔名之對照關係。其中’name’為檔名,命名邏輯為項目、日期、及時間
  • 雨量為6小時累積量,檔名尾有些不同。
  • url為下載標的,下載後隨即將數字檔名更名為正確名稱
{"@type":"DataDownload",
"name":"EARR.precip.20191231.t18z.f06h.nc",
"fileFormat":"application/x-netcdf",
"contentSize":2789320,
"description":"",
"contentUrl":"https://dataverse.harvard.edu/api/access/datafile/4739842"}

下載程式

import os
fjson='prep.json'
with open(fjson,'r') as f:
  l=[l.split('},{') for l in f][0]
fnames=[i.split('"')[7] for i in l]
urls=[i.split('"')[-2] for i in l]
n=len(urls)
for i in range(n):
  if os.path.isfile(fnames[i]):continue
  tmp=urls[i].split('/')[-1]
  os.system('/usr/bin/wget -q '+urls[i]+';mv '+tmp+' '+fnames[i])
  print(fnames[i])

結果偵錯

  1. 檔案喪失
    • 下載過程中有些檔案會喪失,原因不明,可能因為本地端網路斷線所造成。
    • 因後續程式並不會檢查檔案是否存在,因此必須在此階段確實檢討。
  2. 檔案內容
    • 由於EARR檔案是2維檔案,不能直接適用VERDI,必須先進行轉檔。
    • 轉檔結果
EARR_q2.png
q2再分析結果。圖中顯示高山上因氣壓低、水氣濃度顯然較平地為低。同時海上較為濕暖,水氣濃度較高