使用AWS Lambda 製作一個氣溫資料爬蟲
AWS Lambda 玩了一個禮拜稍微摸熟特性之後, 就想找個小題目來做. 由於以前對於寫網路爬蟲有些經驗, 所以決定改用 Lambda來試試,資料是取材於中央氣象局的即時氣溫資料.
範例程式下載
程式說明
- my_crawler_tw_temperature_downloader.py : 下載氣溫資料, 並將原始資料暫存於S3
- my_crawler_tw_temperature_parser.py : 解析資料後,將結果存放於 DynamoDB
-
my_crawler_tw_temperature_process_data.py : 定期將DynamoDB的資料撈出來成為JSON檔案, 也就是上面曲線圖讀進來的資料
-
前端繪圖Lib是 Flot
事件驅動來源
- my_crawler_tw_temperature_downloader.py : 每10分鐘執行一次
- my_crawler_tw_temperature_parser.py : S3產生Event 呼叫本程式(因為上面downloader將網頁存檔到S3)
- my_crawler_tw_temperature_process_data.py : 每1分鐘執行一次
準備
- S3:
- 開一個新的bucket 準備放置許多抓下來的網頁.
-
輸出的JSON網頁也會放於此, 由於 AJAX跨網域讀資料有些限制, 所以你要對Bucket的CORS做設定,允許其他網域來取資料.
-
DynamoDB 先建好以下Table …