在本章,你將學習如何使用 n8n core nodes 處理不同類型的資料。

HTML and XML data

你應該已經對 HTML 與 XML 相當熟悉。

<aside> 🤔

HTML vs. XML

HTML 是用來描述網頁結構與語意的標記語言。XML 與 HTML 看起來很相似,但標籤名稱有所不同,因為它們會描述所包含資料的類型。

</aside>

如果你需要在 n8n 工作流程中處理 HTML 或 XML 資料,可以使用 HTML nodeXML node

使用 HTML node 可以透過引用 CSS 選擇器來擷取網頁的 HTML 內容。如果你想要從網站收集結構化資訊(例如網頁爬蟲),這非常實用。

HTML Exercise

讓我們來擷取最新一篇 n8n blog 文章的標題:

  1. 使用 HTTP Request node 對 URL https://blog.n8n.io/ 發送 GET 請求(此端點不需要驗證)。
  2. 連接一個 HTML node,並設定從該頁面的第一篇部落格文章中擷取標題。

<aside> 🤔

Show me the solution

  1. 在 HTTP Request node 中設定以下參數:

    2025/01/24 網頁如下:

    https://blog.n8n.io/  web page

    https://blog.n8n.io/ web page

    結果應該如下:

    Result of HTTP Request node

    Result of HTTP Request node

  2. 連接一個 HTML node 到 HTTP Request node 並配置以下參數:

    Result of HTML Extract node

    Result of HTML Extract node

    你可以加入更多的欄位來擷取更多資料。

    結果應該如下:

    Result of HTML Extract node

    Result of HTML Extract node

</aside>

如果你想要在不同的網路服務之間(有些使用 XML、有些使用 JSON)交換資料,並需要在兩種格式間讀寫資料,可以使用 XML node 來完成 XML ⇆ JSON 的轉換。

XML Exercise

第一章的最後練習,你已經使用 HTTP Request node 呼叫 Quotable API。在這個練習中,我們會再呼叫相同的 API,但把輸出轉換成 XML:

  1. 新增一個 HTTP Request node,對 https://api.quotable.io/quotes 發送相同請求。
  2. 使用 XML node,將 JSON 輸出轉換為 XML。

<aside> 🤔

Show me the solution

  1. 若要從 Quotable API 取得引言,在 HTTP Request node 中設定:
  2. 將一個 XML node 連接到它,並設定:

結果如下:

XML node (JSON to XML) – Table View

XML node (JSON to XML) – Table View

若要將資料反向轉換,可以選擇 XML to JSON 模式。

</aside>

Date, time, and interval data

日期與時間資料類型包括 DATE、TIME、DATETIME、TIMESTAMP、以及 YEAR。這些日期或時間可能有不同格式,例如: