JSON 資料到實用資訊:N8N 的「挑選」與「整理」術!

數據到手,但怎麼「消化」成可用的情報?

你已經成功從 SerpApi 拿回了 Google 搜尋結果的 JSON 資料,你可能發現這份資料非常龐大且詳細,包含了搜尋結果的各種細節,像是自然搜尋結果、圖片、影片、相關問題等等。但問題來了,我們不可能每次都看這麼一大串原始資料,對吧?

你可能只想要:

  • 所有自然搜尋結果的「標題」和「連結」。
  • 前幾筆搜尋結果的「摘要」。
  • 新聞區塊的「標題」和「來源」。

那麼,如何在 n8n 中,從這些複雜的 JSON 數據中,精準地「挑」出你需要的內容,並把它們整理成好讀、好用的格式呢?這就是我們接下來要學習的重點!我會帶你認識兩個 n8n 中處理 JSON 資料的超好用節點,它們就像你的數據整理助理,讓資料處理變得輕而易舉!

核心工具一:Split Out 節點 — 把「大包裹」拆成「小禮物」

想像一下,你的 SerpApi 回傳的 JSON 資料,就像一個裝滿各種東西的「大包裹」。在這個大包裹裡,有一串重要的「列表」,例如 organic_results (自然搜尋結果)。這個列表裡面裝了很多個獨立的「小禮物」,每個小禮物就是一條搜尋結果 (包含標題、連結、摘要等)。

  • Split Out 節點的任務: 它就像一個「拆包裝專家」,專門負責把你大包裹裡面的某個「列表」,一個一個地拆開,讓每個「小禮物」變成一個獨立的項目 (item)。
  • 為什麼要拆開? 因為 n8n 的很多後續節點,像是 Set 節點、Google Sheets 節點等,更喜歡一次處理一個獨立的項目。把列表拆開後,你就可以針對每一條搜尋結果進行單獨的處理了!

操作步驟:怎麼用 Split Out 節點拆開 organic_results

  • 新增 Split Out 節點: 在你的 HTTP Request 節點後方,點擊右邊的「+」號,搜尋並選擇 Split Out 節點。
  • 設定「要拆分的欄位 (Field to split out)」:
    • 點擊 Split Out 節點。
    • 在右側的設定面板中,找到 Field to split out 這個欄位。
    • 這裡你需要告訴 n8n,你想要拆分 JSON 數據中的哪一個「列表」。根據我們 SerpApi 的結果,我們要拆分的是 organic_results
    • 輸入 organic_results。(也可以從左側直接拖曳到欄位中)
    • 小技巧: 你也可以點擊旁邊的「齒輪」圖示,然後在表達式編輯器中選擇 Current Node > JSON > organic_results,這樣更不容易輸入錯誤。

設定完成後,你點擊 Split Out 節點下方的「Execute Node」(執行節點),你就會看到原本 HTTP Request 節點只輸出一個大項目的資料,經過 Split Out 節點處理後,變成了多個獨立的項目,每個項目都只包含一條 organic_results 的內容。這就是「化整為零」的魔力!

核心工具二:Edit Fields (Set) 節點 — 集「挑選、新增、修改、整理」於一身的數據瑞士刀!

現在,你的「大包裹」已經被 Split Out 節點拆成一個個獨立的「小禮物」(也就是單條搜尋結果的資料)。接下來,我們就要請出我們今天的主角:Edit Fields (Set) 節點。

這個節點的名稱,完美詮釋了它整合了 Edit FieldsSet 兩大功能的精髓。它就像一把數據處理的瑞士刀,讓你可以在同一個地方,完成多種數據的「挑選」、「新增」、「修改」和「整理」任務。

  • Edit Fields (Set) 節點的任務: 它是一個多功能的數據變形金剛。
    • 篩選與移除: 可以精準選擇只保留哪些欄位,或移除哪些不必要的欄位。
    • 重新命名: 將現有欄位改成你喜歡的名稱。
    • 新增與覆寫: 創造一個全新的欄位,或用一個新值覆蓋掉舊欄位。
    • 複雜轉換: 結合 n8n 表達式,對數據進行運算、拼接或條件判斷。

如何選擇 Edit Fields (Set) 節點內部的模式與選項?

這個整合後的節點,內部通常會透過不同的 Mode (模式) 或特定的勾選選項來切換其功能。

任務需求Edit Fields (Set) 節點內的建議操作說明
簡單篩選和重命名選擇 Manual Mapping 模式,拖拉欄位並重命名,確保「Include Other Input Fields」未勾選最直觀高效。 適合當你只想從大量欄位中,選出幾個並可能改名。
新增或複雜轉換選擇 JSON 模式,直接在 JSON 編輯器中定義新的欄位和其值(利用表達式),並小心處理「Include Other Input Fields」。靈活強大。 適合需要計算、拼接、條件判斷後生成新欄位。
特定欄位移除如果想移除很多欄位而只保留少數,Manual Mapping 的「不勾選 Include Other Input Fields」是最好的。
如果想移除特定一兩個,在 JSON 模式下定義你想要的,然後在 Options 中添加 Remove Fields 也可以。
提供精確的欄位刪除控制。

操作步驟:怎麼用 Edit Fields (Set) 節點取出「標題」和「連結」?

目標: 從每個拆分後的搜尋結果項目中,只提取 titlelink,並將它們重命名為 文章標題文章連結

方法一:使用 Manual Mapping 模式 (此場景最推薦,高效且直觀)

  1. 新增 Edit Fields (Set) 節點:Split Out 節點後方,點擊右邊的「+」號,搜尋並選擇 Edit Fields (Set) 節點。
  2. 設定 ModeManual Mapping 點擊 Edit Fields (Set) 節點,在右側設定面板頂部,確保 Mode 選項為 Manual Mapping
  3. 拖拉與重命名欄位:
    • Fields to Set (要設定的欄位) 區塊,你會看到「Drag input fields here」的提示。
    • 將左側 INPUT 預覽區中的 title 欄位拖曳到 Fields to Set 的拖拉區域
    • 在拖曳進來的 title 欄位旁邊,將 New Name (新名稱) 欄位改為:文章標題
    • 重複上述步驟,將 link 欄位也拖曳進來,並將其 New Name 改為:文章連結
  4. 控制其他欄位:
    • 找到 Include Other Input Fields (包含其他輸入欄位) 這個選項。
    • 非常重要:確保這個選項是未勾選**的。這樣 Edit Fields (Set) 就只會輸出你明確設定的 文章標題文章連結,而不會保留其他原始欄位。

方法二:使用 JSON 模式 (適合更複雜的轉換需求)

  • 新增 Edit Fields (Set) 節點:Split Out 節點後方,點擊右邊的「+」號,搜尋並選擇 Edit Fields (Set) 節點。
  • 設定 ModeJSON 點擊 Edit Fields (Set) 節點,在右側設定面板頂部,將 Mode 選項切換為 JSON
  • 編輯 JSON 結構(在 JSON 編輯器中,你將直接定義輸出數據的結構):
    • 白話解釋: 你在定義一個新的 JSON 物件,它有兩個新的「標籤」(文章標題文章連結),它們的「內容」分別來自上一個節點的 titlelink 欄位。
    • 將編輯器中JSON的內容修改為:
      {
      "文章標題": "{{ $json.title }}",
      "文章連結": "{{ $json.link }}"
      }

{{ $json.title }}{{ $json.link }} ,來自上一個節點整理出來的欄位,可以依據你自己想要抓取的資料,自由選擇。可以用拖拉的方式,拉取變數到編輯視窗中。

舉例說明
{
“欄位名稱1”: “{{ 變數名稱1 }}”,
“欄位名稱2”: “{{ 變數名稱2 }}”
}

  • 控制其他欄位:
    • 找到 Include Other Input Fields (包含其他輸入欄位) 選項。
    • 通常在 JSON 模式下,如果你只想要你定義的欄位,會選擇 All (所有) 然後再添加 Remove Fields 選項來移除所有你不要的。但對於這個簡單的「只保留」需求,最直接的方式還是使用 Manual Mapping 模式。如果堅持用 JSON 模式做到最乾淨,你就必須將所有非你定義的原始欄位,都手動添加到下方的 Options -> Remove Fields 列表中。

設定完成後,無論你選擇哪種方法,點擊 Edit Fields (Set) 節點下方的「Execute Node」,你都會看到最終的輸出,只剩下 文章標題文章連結 這兩個乾淨的欄位,而且每一行就是一筆搜尋結果!這就是你整理好的精華數據。

總結:數據處理,擁抱 Edit Fields (Set) 的全面力量!

現在,你已經完全掌握了 Edit Fields (Set) 這個整合型節點的強大之處。它讓你能夠:

  1. 拆分複雜列表: 配合 Split Out 節點,將「一大串」資料,變成「一筆一筆」的獨立項目。
  2. 精準提取、整理與轉換數據: 透過 Manual Mapping 模式進行直觀的篩選和重命名;或是透過 JSON 模式,實現更複雜的數據新增、替換和計算。

Edit Fields (Set) 節點,就是你在 n8n 中處理任何 API 回傳數據的黃金工具。有了它,你可以輕鬆地將這些整理好的數據,進一步發送到 Google Sheets、Slack、Email,或是其他的應用程式中,真正發揮自動化的強大威力!

現在,你已經不僅能獲取數據,更能有條不紊地處理它們。接下來,你希望將這些提取出的「文章標題」和「文章連結」存到哪裡呢?或者,你對 Edit Fields (Set) 節點的更多應用還有疑問?

博文
博文

DADO3C 創辦人

文章: 14

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *