複数ループ実行からのデータ統合 - n8n ワークフロー

カスタムスクリプトとイテレーション制御を使用して高度なn8nワークフローを構築する方法を学習します。このn8nノードの組み合わせは、複数のRSSフィード読み取りからのデータを1つの出力にマージします。

ワークフロープレビュー

自動化の準備はいいですか?

このn8nワークフローテンプレートをダウンロードして、今すぐ使い始めましょう。

こんな方におすすめ

単一のn8n実行内で複数の外部リンクからデータを効率的に集約したいユーザー。
n8nノード内でカスタムJavaScriptロジックの高度な例を必要とする開発者。
n8nにおける複雑なイテレーション、ループ、データマージ技術の習得に興味がある人。
高度に効率的でカスタマイズされたn8nテンプレートを作成したいオートメーションスペシャリスト。

概要

n8nは並列処理に強力ですが、順次ループと集約を正確に制御する必要がある場合もあります。この特定のn8nワークフローは、複数のURL(この例では具体的に2つのRSSフィード)から順次コンテンツを取得する技術を示しています。真の革新は、IF n8nノードとSplitInBatchesコンテキストを組み合わせて制御されたループを作成し、全フィードが確実に読み取られるようにする点にあります。重要なのは、最終的にカスタムのFunction n8nノードが、それ以前の全ループ実行からデータを取得・結合し、統合された結果を返すことです。このパターンは、堅牢なデータ集約n8nテンプレートを作成するために不可欠です。

仕組み

n8nワークフローは、On clicking 'execute' n8nトリガーから開始されます。


  1. URLの初期化: 最初のFunction n8nノードが、入力(MediumとDev.toのn8n関連コンテンツのRSSフィードURL)を定義し、それぞれを個別のアイテムとして作成します。

  2. 逐次処理: SplitInBatches n8nノードにより、フローが一度に1つのURLアイテムのみを処理するように保証されます。

  3. データ取得: RSS Feed Read n8nノードが、現在のバッチのURLを使用して実行されます。

  4. ループ制御: IF n8nノードはSplitInBatchesコンテキストをチェックします。

アイテムが残っている場合(noItemsLeftがfalse)、フローはパス1を経由してSplitInBatchesに戻り、次のURLを処理します。
全アイテムが処理済みの場合(noItemsLeftがtrue)、フローはパス0を経由して最終的な集約ステップ(Merge Data)に進みます。

  1. 最終集約: Merge DataカスタムFunction n8nノードは、全ループが完了した後にのみ実行されます。これは、$items()ヘルパー関数を使用して、以前のRSS Feed Read n8nノードの実行を反復処理し、取得した全データを単一のJSONオブジェクトに収集します。これにより、n8nワークフロー全体が完了します。

インストールガイド

この高度なn8nワークフローを使用するには、次の手順に従ってください。


  1. JSONのインポート: 提供されたn8nワークフローのJSONコードをコピーします。お使いのn8nインスタンスでワークフローセクションに移動し、「+」ボタンをクリックして「JSONからインポート」を選択します。

  2. 認証情報の設定: この特定のn8nワークフローは、組み込みのRSS Feed Read n8nノードを使用しており、通常は外部の認証情報を必要としません。お使いのn8nインスタンスが外部URLに到達できることを確認してください。

  3. コードの確認: Merge Data n8nノードを開き、集約に使用されている具体的なJavaScriptロジックを確認します。異なるソースを追跡したい場合は、最初のFunction n8nノード内のフィードURLを変更してください。このn8nテンプレートは簡単に変更できるように設計されています。

  4. 実行: 「ワークフローを実行」ボタンをクリックするか、On clicking 'execute' n8nトリガーを使用して、データマージ機能をテストします。この高度なn8nテンプレートは、すぐに実行できる状態になっています。

ノード詳細

このカスタムn8nワークフローは、いくつかの主要なn8nノードタイプを活用しています。

On clicking 'execute' (手動トリガー): 標準的な開始点です。このn8nトリガーは、手動テストと実行のためにプロセス全体を開始します。
Function (URLの初期化): 2つのアイテムを生成し、それぞれがRSSフィードURLを定義します。これがSplitInBatches n8nノードへの初期タスクリストとなります。
SplitInBatches: イテレーション制御の要。下流のn8nノード(RSS Feed Read)にアイテムを1つずつ送信します。重要な設定: バッチサイズは1に設定されます。
RSS Feed Read: 入力として渡されたURL(={{$json["url"]}})を使用して動的に設定されるコアアクションn8nノード。
IF: ループを管理するフロー制御n8nノード。SplitInBatches n8nノードがジョブを完了したかどうかを、$node["SplitInBatches"].context["noItemsLeft"]式を評価してチェックします。未完了の場合、ループバックし、n8nワークフローが全アイテムを処理するように保証します。
Merge Data (Function): 集約スクリプトを含む複雑なカスタムn8nノード。Javascriptの$items("RSS Feed Read", 0, counter)を使用して、全イテレーションにおけるRSS Feed Read n8nノードの出力を取得し、全結果を単一アイテムに統合します。この強力な手法が、このn8nテンプレートを特徴づけています。

関連するn8nワークフロー

無料

ノード: 5 ノード
更新済み: 12月 26 2025
すべて表示
作成者
ghagrawal17
ghagrawal17

特徴*