iT邦幫忙

2025 iThome 鐵人賽

DAY 18
0
生成式 AI

30 天生成式 AI 工作流:社群經營者的自動化實戰系列 第 18

Day 18|資料獵人養成記(2)把資料放進口袋:外部儲存與讀取 📜

  • 分享至 

  • xImage
  •  

資料只有被好好保存,才真正屬於你。

前一篇我們練習把網站上的資料分離出來,變成整齊的 items,像一串串珍珠。

但光撈起來還不夠,若沒有好好保存,這些資料很快就會淹沒在流程中無影無蹤。

今天,我們要學會把資料「放進口袋」,也就是送進外部資料庫(例如 Airtable),並學會怎麼再把它們讀回來,讓工作流能接續前進。

今天的工作流,可以在這裡下載。(工作流範本

https://ithelp.ithome.com.tw/upload/images/20250915/20178495PRqaZKvkMT.png


📦 將資料送進 Airtable

過去我們把資料存成 CSV,但實務上常會用第三方資料服務,例如 Airtable、Google Sheet、Notion。它們都能當作資料庫,方便共享與後續處理。

這裡我們以 Airtable 為例,延續 Day 17 做好的工作流,我們有 20 個 items,每個 item 有兩個欄位 title 與 url,要嘗試把它們上傳到 Airtable。

💡 前置準備:Day 16 的作業已請大家註冊 Airtable 帳號,並設好 Credential。


⚙️ Airtable 節點設定

  1. 在 Merge 節點 後方接上一個 Airtable 節點,選擇「Create or update a record」。
  2. 點開 Airtable 節點設定,「Credential to connect with」若尚未設置,點「Create new credential」,旁邊的「Open docs」可以查看 n8n 官方教學。
  3. 「Resource」選擇「Record」,「Operation」選「Create or Update」。
    • 這樣若資料已存在會更新,沒有才會建立,避免重複。
  4. 若 Airtable 還沒有資料表,暫時會看不到 Base 和 Table 選項,接下來我們先到 Airtable 建立資料表。

🗂️ 建立 Airtable 資料表

  1. 點「Create a workspace」建立工作空間。
  2. 點「Create」,選擇「Build an app on your own」手動建立表格。
  3. 表格出現後,可以修改欄位。我們先刪除不需要的欄位,新增兩個欄位:TitleURL(分別用來儲存書名與網址)。

🔁 回到 n8n Airtable 節點設定

  1. 現在「Base」、「Table」欄位可以選到剛剛做好的資料表。
  2. 「Mapping Column Mode」選「Map Automatically」,「Columns to match on」選「Title」,讓相同書名時不重複新增。
    • 這個選項只有在「Create or Update」時會出現,若選「Create」則每次都會新增一筆資料。
  3. 執行「Execute step」會發現失敗,因為輸入資料的欄位名稱是 titleurl,而表格是 TitleURL
    • 為了演示,我們改選「Map Each Column Manually」,刪除多餘欄位,將 Merge 節點的 title 與 url 分別拖入,變成 {{ $json.title }}{{ $json.url }}
    • 再次執行,就能看到 Airtable 表格中 20 筆資料一筆筆新增。

📝 小知識:$json.title 表示「上一個節點輸出資料中的 title 欄位的值」,$json 就是指上一個節點的 JSON 資料。其實也能抓取更前面的節點值,後面我們會用到。


🧩 拆分工作流(可選)

如果未來不是直接從爬蟲流程寫入資料,也可以把寫入與後續處理拆成兩個工作流。

  1. 在寫入流程的結尾加上 Execute Workflow 節點
    • 「Source」選「Database」
    • 「Workflow」選本篇的工作流
    • 「Mode」選「Run once with all items」
  2. 在新白板建立一個 When Executed by Another Workflow 節點,設定「Input data mode」為「Accept all data」

這樣能模組化流程,更方便維護與重複使用。


📥 從 Airtable 讀取資料

  1. 在「When Executed by Another Workflow」後,新增 Airtable 的「Search records」節點
  2. 設定:
    • 「Credential to connect with」選剛剛的 Airtable 帳號
    • 「Resource」選「Record」,「Operation」選「Search」
    • 「Base」、「Table」選對應資料表
    • 「Return All」打開(否則要設定 Limit)
  3. 「Filter By Formula」可以寫 Airtable 公式篩選特定資料,這裡先留空,表示全部讀取
  4. 執行「Execute step」,可以看到 Airtable 的資料被抓回來

🧠 小結

到這裡,我們已經學會把資料從 n8n 寫入 Airtable,也能從 Airtable 讀出來。

📌 重點觀念:

  • 外部資料庫讓資料能在流程之間共享與保存
  • 一次可以寫入或讀出多個 items,不需用迴圈
  • 若要針對每筆資料做額外工作,之後會用到迴圈(Day 19)

📝 小作業

  • 嘗試把 Airtable 的欄位名稱改成 titleurl,測試「Map Automatically」是否能自動對應
  • 練習刪除 Airtable 表格中不需要的欄位,讓資料保持乾淨整齊

交流

我建立了一個行銷技術交流群,專注討論 SEO、行銷自動化等主題,歡迎有興趣的朋友一起加入交流。

掃QR Code 或點擊圖片加入

https://ithelp.ithome.com.tw/upload/images/20250901/20178495xURUZaqziV.jpg


上一篇
Day 17|資料獵人養成記(1)讓資料乖乖排隊:分離與合併 🧩
下一篇
Day 19|資料獵人養成記(3)人人都能打造的資料迴圈工廠 🏭
系列文
30 天生成式 AI 工作流:社群經營者的自動化實戰21
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言