前言
Google Apps Script(GAS)是一個基於 JavaScript 的雲端自動化平台,非常適合用來串接 Google 服務與自動化日常任務。本篇指南將以「台北股市爬蟲」為例,帶你從零開始,實作一個自動抓取台股即時報價並寫入 Google Sheet 的小工具。
步驟一:建立 Google Sheet 並開啟 Apps Script 編輯器
- 進入 Google Sheet,點選「擴充功能」→「應用程式腳本」。
- 進入編輯器後,將預設
Code.gs
內容清空。
步驟二:撰寫爬蟲主程式
以下程式碼會以公開台股 API(如 twse、yahoo finance)為例,抓取台積電(2330)即時報價:
function fetchTWSEStock() {
var url = 'https://mis.twse.com.tw/stock/api/getStockInfo.jsp?ex_ch=tse_2330.tw&json=1&delay=0';
var response = UrlFetchApp.fetch(url);
var data = JSON.parse(response.getContentText());
var stock = data.msgArray[0];
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
sheet.appendRow([
new Date(),
stock.c, // 股票代號
stock.n, // 股票名稱
stock.z, // 最新成交價
stock.v, // 成交量
stock.t, // 時間
]);
}
步驟三:設定排程自動執行
- 在 Apps Script 編輯器點選左側「鬧鐘」圖示(觸發器)。
- 新增觸發器,選擇
fetchTWSEStock
,觸發事件設為「時間驅動」→「每小時」或「自訂」。
步驟四:延伸應用
- 可改抓多檔股票,或自訂股票清單。
- 可自動寄送 email 通知、推播 Line Notify。
- 可進行資料視覺化。
常見問題(FAQ)
Q1:API 來源有哪些?
A:可用台灣證交所(twse)、Yahoo Finance、聚財網等公開 API。
Q2:遇到 CORS 或權限問題怎麼辦?
A:GAS 伺服器端執行,不受 CORS 限制,但部分 API 需注意授權。
Q3:如何自動化多檔股票?
A:可用 for 迴圈遍歷股票代碼陣列,依序抓取並寫入。
結語
Google Apps Script 結合 Google Sheet,能輕鬆打造屬於自己的台股自動化小工具。歡迎延伸應用到其他金融資料、報表自動化等場景!
延伸閱讀: