前言:
在「n8n 用到哪寫到哪」系列中,我們的目標很簡單:讓想要取得的資訊,透過自動化工具傳送到便於我們瀏覽的地方。
經過前面的準備工作,我們已經將自動化工具 n8n 以及 LINE Bot 的推播渠道都準備就緒(如果你還沒完成前置作業,請參考以下文章)
n8n 輕量化部署:Mac Docker 地端安裝教學n8n 用到哪寫到哪:YouTube 頻道更新自動通知(上篇)- LINE Bot 設定完全指南
現在,我們可以開始學習如何使用 n8n 協助我們完成自動化!為了讓大家更容易理解操作過程,本篇會用更多圖文說明每個步驟。
開始前確認
我們先前準備好的參數資料,如果還沒準備好,請先完成。如果一切就緒,那就開始吧。
- 資訊點 A:Webhook 網址欄位(待填入)
- 資訊點 B:Channel Access Token
- 資訊點 C:ngrok 網址
第一步:建立 n8n 工作流
1.1 n8n 建立新工作流程
- 打開 Docker Desktop,並執行 n8n 的容器

Docker desktop
- 打開 n8n 介面,在你的瀏覽器輸入 http://localhost:5678,強烈建議使用 Chrome 瀏覽器比較不會出問題
- 點擊右上角的「+ Create workflow」,工作流程名稱自行設定,例:YouTube LINE 通知系統。現階段我只會針對我們會應用的部分提供描述,有興趣的人可自行測試。

全國最大 n8n 首頁上線啦~
1.2 n8n 介面說明
- 接著我們會進到 n8n 開發頁,有幾個按鈕我們再開始接觸的時候會使用到

n8n 開發頁面
新增節點按鈕
- 「+」號和「Add first step」:功能完全相同,都是用來新增節點到 workflow 中。「Add first step」只會在空白 workflow 中出現,之後就會變成「+」號。
重要頁籤
- Editor 頁籤:workflow 的編輯頁面,在這裡你可以拖拉節點、設定參數、連接各個步驟,基本上所有的 workflow 建構都在這個頁面完成。
- Executions 頁籤:執行歷史記錄頁面,可以查看每次 workflow 執行的結果、錯誤訊息、各節點的輸入輸出資料,是除錯和監控的重要工具。
第二步:建立 Youtube 監控 Workflow
2.1 設定 Schedule Trigger
- 加入 Schedule Trigger 節點
- 設定:
- Trigger Interval: Custom
- Cron Expression:
0 0 0 * * *(每天凌晨零點執行;換日)

Schedule Trigger
- 注意這邊跟一般 Cron 宣告不一樣
- 注意預設時區,建議之後從組態將時區調整為Asia/Taipei
- 更多 crontab express for n8n
# ┌─────────────── 秒 (0 - 59)
# │ ┌───────────── 分鐘 (0 - 59)
# │ │ ┌─────────── 小時 (0 - 23)
# │ │ │ ┌───────── 日 (1 - 31)
# │ │ │ │ ┌─────── 月 (1 - 12)
# │ │ │ │ │ ┌───── 星期 (0 - 6, 0=星期日)
# │ │ │ │ │ │
# * * * * * *
# 每天凌晨 12 點執行
0 0 0 * * *
# 每 30 分鐘執行一次
0 */30 * * * *
# 每週一上午 9 點執行
0 0 9 * * 1
# 每月 1 號凌晨 2 點執行
0 0 2 1 * *
2.2 設定 RSS Read 節點
- 加入 RSS Read 節點
- 連接到 Schedule Trigger 後面
- 設定 URL:
https://www.youtube.com/feeds/videos.xml?channel_id=你的頻道ID
如何取得頻道ID:

如何得頻道 ID
如果你嘗試看你取得什麼東西,可以將 網址 貼進去網站看看,你會得到一包 RSS 回傳的資料
所以我們回到 RSS Read 節點設定的畫面,試著按下「execute step」,你會發現我們已經把 RSS 資訊給取回來了,也可以試著切換頁籤會更好瀏覽。

RSS 節點設定與回傳
截至目前為止,你的畫面應該會有兩個節點,並且底下打勾表示執行成功。

排程取得 RSS 資料
由於 Line Message API 免費版本身有 200次/天 的限制,同時我們的目的是要關注最新的影片狀況,因此我們並不會將原始的 RSS 全數推播,所以在這邊我們將設計一的判斷節點,讓資料一天只去觀察一次,並且回傳 24 小時內是否有內容更新,一天監控 v.s 24 小時內的對價設定可以確保我們不會遺漏或重複 (MECE) 影片的資訊。
2.3 設定 If 節點(過濾新影片)
- 加入 If 節點
- 連接到 RSS Read 後面
- 設定條件:
- Value 1:
{{DateTime.now().minus({hours: 24}).toISO()}} - Operation:
before - Value 2:
{{$json.isoDate}}
- Value 1:
這個條件會篩選出「24 小時內發布的影片」。
這裡會是唯一會需要一些程式語言的部分,細節有點多,讓我來逐一解釋
2.3.1 if 節點會用到的程式語言
這是 JavaScript 語法,n8n 使用 JavaScript 作為表達式語言。
參數來源解釋
Value 1: {{DateTime.now().minus({hours: 24}).toISO()}}
DateTime.now():取得目前時間.minus({hours: 24}):減去 24 小時.toISO():轉換成 ISO 8601 格式(例如:2025-07-11T10:30:00.000Z)- 整體意思:「24 小時前的時間」
Value 2: {{$json.isoDate}}
$json:代表從前一個節點(RSS Read)傳來的資料.isoDate:RSS 資料中影片的發布時間欄位- 這是 RSS Read 節點自動產生的標準化時間格式
2.3.2 if 節點設定注意事項
- 在輸入 Value 1 和 Value 2 欄位的時候記得將欄位切換至 expression 已確保他是程式模式
- 中間的運算子,請以 Date & Time 進行,選擇 「is before」
- 在此範例中,如果按下 Execute step 會沒有反應,因為最近一次的文章更新大概在一個月前,如果你把 24 小時改成 720 小時,再次按下執行,便可將資料回傳。(隨你玩)

RSS 節點細節
恭喜你完成了第三個節點!最後一個節點了,也是相對麻煩的。加油!
2.4 HTTP Request 節點
- 加入 HTTP Request 節點
- 連接到 If 節點的 True 輸出,False 我們這邊先讓他不作任何反應。
- 基本設定:
- Method:
POST - URL:
https://api.line.me/v2/bot/message/push(這是固定的設定值) - 填寫 Header 和 Body ,並選擇 「Use Json」

這兩個不要填錯囉!
Header 設定
{ "Authorization": "Bearer 你的CHANNEL_ACCESS_TOKEN", "Content-Type": "application/json" }
請準備好你的 資訊點 B 帶入上述 Token 的位置輸入!!(我要刺進你的零魂深處)
Body 設定(Part 1)
{
"to": "U3507c52ecf6e0f61855fb4baf14a333a",
"messages": [
{
"type": "text",
"text": "🎥 新影片上傳!\n\n📺 標題:{{$json.title}}\n🕒 發布時間:{{$json.pubDate}}\n🔗 連結:{{$json.link}}"
}
]
}
在 n8n 用到哪寫到哪:YouTube 頻道更新自動通知(上篇)- LINE Bot 設定完全指南 文末只有提到準備取得 LINE User ID 的環境的步驟,是因為 USER_ID 的取得必須仰賴 n8n 來進行,並且輸入在 http Request 節點的 body 資訊中。
又,LINE User ID 的生成方式必須額外使用 webhook 節點 獨立進行,所以這個步驟會被我安排在這裡才講以避免混淆。
Body 設定 (Part 2)
- 在空白處建立 webhook 節點
- HTTP Method:POST
- 選擇 Production URL 頁籤
- 複製 Production URL 網址

n8n Webhook 取得 LineID 流程 (圖一)
將 「資訊點 C」 和 Production URL 進行地址置換,如下
https://亂數.ngrok-free.app
http://localhost:5678/webhook/f8434e7a-75ef-4c7c-ae1f-731a853b16fa
合併成
https://亂數.ngrok-free.app/webhook/f8434e7a-75ef-4c7c-ae1f-731a853b16fa (這邊是 https)
把這邊的新網址,貼到『資訊點 A』中(當初掃 QRCode 和 Token 那一頁)

n8n Webhook 取得 LineID 流程 (圖二)
然後回到 Line 設定按下 verify,顯示 Success 代表你連動完成
接下來非常重要,
- 首先先把正式模式打開,切換成 Active

- 到你所建立的聊天室隨便打幾句話
然後
- 切換執行紀錄頁籤 Executions -> 選擇剛剛的活動時間 -> 打開 Webhook

你就會看到你剛剛打的對話以及最重要的 LineID 資訊

我們可以把取得的 LineID 輸入進去 Body 之中。
我們的 workflow 完成之後會長這樣

第三步:測試
3.1 測試 workflow
- 點擊「Execute Workflow」
- 檢查各節點執行狀態
- 確認 LINE 是否收到通知

在 Body 中的文字和 Json 欄位的引用都可以隨喜歡的風格置換即可。
總結與驗證
完成上述設定後,您的 YouTube 頻道監控系統就正式啟動了!讓我們快速回顧整個流程:
- Schedule Trigger:每天凌晨自動執行
- RSS Read:獲取頻道最新影片資訊
- If 節點:篩選 24 小時內的新影片
- HTTP Request:透過 LINE Bot 推送通知
下一步
恭喜你完成了第一個 n8n 自動化專案!這裡有幾個建議
- 根據需求調整通知內容和頻率
- 探索 n8n 的其他節點,創造更多自動化可能
有了這個基礎,希望可以幫助你踏入了自動化的世界,所有重複的事情,都是自動化可能實現的地方。
之後會繼續撰寫其他的應用,如果你喜歡,請不要吝於按讚鼓勵,有遭遇到任何問題也歡迎一起討論,謝謝
我們下次見。












