首頁 / n8n 工作流模板 / 使用 Google Apps Script 自動將影片上傳至 Google 雲端硬碟

使用 Google Apps Script 自動將影片上傳至 Google 雲端硬碟

Upload video to drive via google script

此工作流程手動觸發,將影片 URL 傳送至 Google Apps Script 網路應用程式以上傳至 Google 雲端硬碟,然後重新命名上傳的檔案。

手動觸發3 個節點效率辦公Google 雲端硬碟自動化HTTP 請求

工作流介紹

使用 Google Script 工作流程將影片上傳至 Google Drive

這個 N8n 工作流程範本透過外部 Google Apps Script 網頁應用程式,自動化從公開 URL 上傳影片至 Google Drive 的過程,然後在 Google Drive 中重新命名已上傳的檔案。它展示了 n8n、Google Drive 和託管於 Google 基礎設施上的自訂無伺服器邏輯之間的實際整合。

工作流程功能

工作流程在手動觸發時啟動(例如,點擊「測試工作流程」),並執行以下順序:

  1. 將包含影片 URL 和驗證密碼的 POST 要求傳送至 Google Apps Script 網頁應用程式。
  2. 該腳本在外部執行,從提供的 URL 下載影片,並將其直接儲存到已設定的 Google Drive 資料夾中。
  3. 上傳確認後,n8n 會繼續將新上傳的檔案在 Google Drive 中重新命名為預設名稱(「Music Video 1」)。

這使得自動化的雲端影片擷取成為可能,而無需在中間系統上進行直接檔案處理或大量儲存。


主要功能與能力

  • 外部腳本整合:利用 Google Apps Script 作為輕量級無伺服器函數來處理檔案下載和 Drive 上傳,從而減輕 n8n 的負擔。
  • 安全通訊:使用密碼令牌(secret)來驗證對 Google Script 端點的要求,防止未經授權的存取。
  • 自動化檔案管理:上傳後自動重新命名檔案,以確保一致性和組織性。
  • 事件驅動執行:手動觸發,非常適合測試或隨需應變的操作。
  • 模組化設計:每個步驟都封裝在專用節點中,易於修改和擴展。

主要節點及其用途

  1. 手動觸發節點

    • 節點類型:n8n-nodes-base.manualTrigger
    • 用途:作為工作流程的起點。當使用者點擊「測試工作流程」時,此節點會啟動執行鏈。適用於除錯和受控執行。
  2. HTTP 請求節點 –「將 URL 傳送至 GDrive 腳本並上傳」

    • 節點類型:n8n-nodes-base.httpRequest
    • 用途:透過 HTTP POST 將 JSON 負載傳送至 Google Apps Script 網頁應用程式。負載包含:
      • videoUrl:要下載的影片檔案的公開 URL。
      • secret:用於驗證腳本端要求的驗證金鑰。
    • 此節點會在 n8n 外部觸發實際的上傳過程。
  3. Google Drive 節點 –「重新命名已上傳影片」

    • 節點類型:n8n-nodes-base.googleDrive
    • 操作:Update
    • 參數:
      • fileId:從 Google Script 上傳後應傳回的 $json.driveUrl 動態提取。
      • newUpdatedFileName:將檔案重新命名為「Music Video 1」。
    • 憑證:使用連結至 Google Drive 帳戶的 OAuth2 憑證。
    • 用途:透過乾淨、一致的檔案名來組織已上傳的內容,從而完成自動化。

使用案例和優勢

使用案例

  • 內容聚合平台:自動將促銷影片、使用者生成內容或媒體資產從第三方 URL 匯入到已組織的 Drive 資料夾中。
  • 行銷自動化:排程或觸發影片上傳,用於廣告活動、社群媒體貼文或內部審核。
  • 備份與歸檔:從遠端來源提取媒體檔案,並以標準化命名安全地儲存在 Google Drive 中。
  • 整合中間件:連接生成影片連結的系統(如錄製工具或 AI 影片生成器)與 Google Workspace 環境。

優勢

  • 效率:無需手動下載和上傳任務。
  • 可擴展性:可以擴展以循環處理多個 URL 或與 webhook 觸發器整合。
  • 安全性:將敏感腳本保留在已驗證的端點後面。
  • 靈活性:易於修改影片來源、目標名稱,或添加其他步驟,如共用權限或資料夾組織。

分步工作流程邏輯

  1. 開始(手動觸發)
    → 使用者透過點擊「測試工作流程」手動啟動工作流程。

  2. 將要求傳送至 Google Script
    → HTTP 請求節點將 POST 要求傳送至 "your_google_script_web_app_url",並附帶以下內文:

    {
      "videoUrl": "https://example.com/path/to/your.mp4",
      "secret": "your-strong-secret-here"
    }
    

    → Google Apps Script 接收此請求,驗證密碼,擷取影片,並將其上傳到指定的 Google Drive 位置。

  3. 接收檔案 ID / URL(隱含)
    → 雖然目前設定中未明確顯示,但預期 Google Script 會在其回應中傳回已上傳影片的 fileId 或 driveUrl。
    → 此值必須映射到 $json.driveUrl,以便下一個節點可以使用它。

  4. 重新命名已上傳檔案
    → Google Drive 節點使用收到的 fileId(來自 ={{ $json.driveUrl }})來更新中繼資料。
    → 使用 update 操作將檔案名更改為 「Music Video 1」。

  5. 工作流程完成
    → 影片現在已以新名稱儲存在 Google Drive 中,完全自動化。

⚠️ 注意:為確保完整功能,請確保 Google Apps Script 以與 fileId 輸入欄位相容的格式傳回正確的 fileId 或 webViewLink。如果回應結構需要轉換,您可能需要使用 Set 節點調整輸出解析。


結論

此工作流程例證了 n8n 如何有效地協調外部 API 與 Google 服務之間的互動。透過將繁重的工作(如檔案傳輸)卸載到 Google Apps Script,並將控制邏輯保留在 n8n 中,使用者可以實現安全、可擴展且易於維護的自動化管道,用於管理 Google Drive 中的影片內容。

使用方法:下載 JSON 檔案,然後在 n8n 中選擇「從檔案匯入」。