前言

Google Apps Script(GAS)是一個基於 JavaScript 的雲端自動化平台,非常適合用來串接 Google 服務與自動化日常任務。本篇指南將以「台北股市爬蟲」為例,帶你從零開始,實作一個自動抓取台股即時報價並寫入 Google Sheet 的小工具。

步驟一:建立 Google Sheet 並開啟 Apps Script 編輯器

  1. 進入 Google Sheet,點選「擴充功能」→「應用程式腳本」。
  2. 進入編輯器後,將預設 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, // 時間
  ]);
}

步驟三:設定排程自動執行

  1. 在 Apps Script 編輯器點選左側「鬧鐘」圖示(觸發器)。
  2. 新增觸發器,選擇 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,能輕鬆打造屬於自己的台股自動化小工具。歡迎延伸應用到其他金融資料、報表自動化等場景!


延伸閱讀: