(チュートリアル)NASAソーラーフレアデータ自動化ワークフロー🛰️(⭐⭐)

作成日
名前
(チュートリアル)NASAソーラーフレアデータ自動化ワークフロー🛰️(⭐⭐)
Created by
  • data_popcorn
https://docs.n8n.io/try-it-out/longer-introduction/内容に基づいて作成されました。

ワークフローのダウンロード

1. ワークフローの概要

このN8nワークフローは、NASAのDONKI(Dataset Of Notifications、Knowledge、Information)システムから太陽フレア(Solar Flare)データを定期的に取得し、特定の条件に基づいてフィルタリングし、結果をPostBinを介して保存する自動化プロセスです。

主な機能:

NASA DONKI APIを活用して、過去7日間の太陽フレアデータを取得します。
特定の条件(ClassTypeが「C」を含むかどうか)に基づいてデータをフィルタリングします。
フィルタ処理されたデータをPostBinサービスに保存します。

解決する問題:

太陽活動を監視する過程で、毎回手動でデータを取得する手間を省き、特定の条件を満たすデータのみを自動的にフィルタリングして保存します。

ユーザー特典:

NASAデータを簡単に収集して管理可能
特定の条件を満たすデータのみをフィルタリングしてクリーンアップ
自動化されたプロセスによりリアルタイムで監視可能

2. 事前作業✅

このワークフローを実行するには、次の準備が必要です。
NASA API Key 発行:
NASA APIポータルからAPIキーを生成し、n8nで資格情報を追加する
PostBinアカウントとBinの作成:
PostBinを利用してデータを保存するため、アカウントの作成とBin IDの確認が必要

3.主な機能と役割⚙️

このワークフローは複数のノードで構成され、各ノードの役割は次のとおりです。

1️⃣ Schedule Trigger

毎週月曜日午前9時にワークフローを自動実行します。

2️⃣ NASAデータ収集(NASAノード)

DONKI APIから過去7日間の太陽フレアデータを取得します。
リクエストパラメータ: StartDate (今日の日付で7日前)
API資格情報:NASA API Keyが必要
右上にある設定( )オプションを押して、TimezoneをAsia / Seoulに変更します。

NASAノードの追加と資格情報の設定

1.
トリガーノードの後に​​+ボタンを押してノードを追加した後、 NASAを検索して選択します。 DONKIソーラーフレアを入手を選択します。このアクションは、最近の太陽フレアのレポートを返します。操作を選択すると、n8nはノードをキャンバスに追加して開きます。
2.
NASA APIにアクセスするには、資格情報を設定する必要があります。
a.
NASA API資格情報ドロップダウンを選択します。
b.
[新規]を選択します N8n資格情報ビューが開きます。
c.
NASA APIにアクセスして、 APIキーの生成にフォームを作成します。 NASA はキーを生成して表示します。 (この形式です。 VG7azJnxdf6sPXgdKuPGplbGjZD3RSY9nAoWfNPf
d.
キーをコピーしてN8nのAPIキーに貼り付けます。
e.
保存を選択します。
f.
資格情報画面を閉じます。 N8n がノードに戻ります。新しい資格情報は、 NASA APIの資格情報から自動的に選択する必要があります。
3.
デフォルトでは、DONKI Solar Flareは過去30日間のデータを提供します。最後の主にのみ制限するには、追加フィールドを使用します。
a.
追加フィールドを選択します。
b.
開始日を選択します。
c.
1週間前からレポートを受け取るには、式を使用できます。開始日の横にあるタブを選択し、拡張ボタンを選択して式エディタ全体を開きます。
d.
「式」フィールドに次の式を入力します。
{{$today.minus({days: 7}).toFormat('yyyy-MM-dd')}}
💡
N8nはラクソンを使用して日付と時刻を処理し、便宜上2つの変数を提供します$today 。詳細については、 > ラクソンを参照してください。
4.
式編集モードを閉じると、NASA ノードに戻ります。
5.
これで、ノードが動作していることを確認し、予想日を返すことができます。テストステップを選択してノードを手動で実行します。 N8nはNASA APIを呼び出し、過去7日間の太陽フレアの詳細をOUPTUREセクションに表示します。
6.
NASAノードを閉じてワークフローキャンバスに戻ります。

If ノードとしてロジックを追加する

3️⃣データフィルタリング(Ifノード)

インポートされた太陽フレアデータのうち、 ClassType値が「C」を含む場合をフィルタリングします。
フィルタリングされたデータのみが後続の処理に渡されます。
N8nはワークフローで複雑なロジックをサポートします。このチュートリアルでは、 Ifノードを使用してNASAデータからそれぞれレポートを生成する2つのブランチを作成します。
太陽フレアには5つの分類があります。子分類を持つレポートをある出力に送信し、親分類を持つレポートを別の出力に送信するロジックを作成できます。
If ノードを追加:
1.
NASAノードで、ノード追加コネクタを選択します。
2.
If 。 n8n 検索は、検索に一致するノードのリストを表示します。
3.
キャンバスにノードを追加するには、 Ifを選択します。
N8n このノードを開きます。
4.
の値を確認する必要があります。 ClassType NASA データの属性。これを行うには:
a.
ドラッグクラス値1入力します。
前のセクションでNASAノードを実行したことを確認します。
前のセクションの手順に従ってNASAノードを実行していない場合、このステップで作業するデータは表示されません。
b.
比較操作をインクルード変更します。
c.
値2Xと入力します。
これは太陽フレアの最も高い分類です。
次のステップでは、Xグレードのソーラーフレアに関するレポートと、すべてのコンパクトなソーラーフレアの2つのレポートを作成します。
d.
これで、ノードが動作していることを確認し、予想日を返すことができます。テストステップを選択してノードを手動で実行します。 N8n は条件のデータをテストし、出力パネルに真または偽と一致する結果を表示します。
💡
このチュートリアルでは、リアルタイムの日付で作業しています。ワークフローの実行時にXクラスの太陽フレアがないことがわかった場合 2XをA、B、 C または Mと交換してみてください。

3️⃣データフィルタリング(Ifノード)

インポートされた太陽フレアデータのうち、 ClassType値が「C」を含む場合をフィルタリングします。
フィルタリングされたデータのみが後続の処理に渡されます。

ワークフローからのデータ出力

ワークフローの最後のステップは、太陽フレアに関する2つのレポートを送信することです。この例では、ポストビンデータを転送します。ポストビンは、データを受け取り、一時的なWebページに表示するサービスです。
1.
Ifノードでtrueとマークされているノードコネクタの追加を選択します。
2.
PostBinを検索します。 n8n は検索に一致するノードのリストを示します。
3.
PostBinを選択します。
4.
要求を送信を選択します。 N8nはノードをキャンバスに追加して開きます。
5.
ポストビンに移動し、空の作成を選択します。
ワークフローをテストするときにタブに戻るようにタブを開いたままにします。
6.
ゴミ箱IDをコピーします。次のように見えます。 1651063625300-2016451240051
7.
N8nで、ポストビンIDを空のIDに貼り付けます。
8.
これでPostbinに送信するデータを設定します。
空のコンテンツの横にある式タブを選択し、拡張ボタンを選択して式エディタ全体を開きます。
9.
現在のノード>入力データ> JSON > classTypeを選択します。n8nはを式エディタに追加し、サンプル出力を表示します。
10.
式は次のとおりです。 {{$Json["classType"]}}
完全な式になるようにメッセージを追加します。
There was a solar flare of class {{$json["classType"]}}
11.
式をエディタを閉じてノードに戻ります。
12.
ポストビンノードを閉じてキャンバスに戻ります。
13.
別のポストビンノードを追加して、Ifノードの誤った出力パスを処理します。
a.
ポストビンノードにカーソルを合わせて、ノードコンテキストメニュー>冗長ノードを選択して最初のポストビンノードを複製します。
b.
偽のコネクタをIfノードから新しいポストビンノードの左側にドラッグします。

5️⃣追加データ要求処理(PostBin2、PostBin3ノード)

格納されたデータのRequestIdに基づいて追加処理可能

ワークフローテスト

1.
これでワークフロー全体をテストできます。テストワークフローを選択します。 N8nは、進行中の各ステップを示すワークフローを実行します。
2.
ポスティビンに戻ります。ページを更新して出力を確認します。
3.
このワークフローを使用するには(つまり、週に1回自動的に実行するには)アクティブ化トグルを選択してアクティブ化する必要があります。
💡
タイムアウト)ポストビンのゴミ箱は作成後30分間存在します。このタイムアウトを超えた場合は、新しい Bean を作成し、ポストビンノードの ID を更新する必要がある場合があります。

4. 動作方式(段階別説明) 🔄

1️⃣ Schedule Trigger → 毎週月曜日午前9時にワークフロー実行
2️⃣NASA
ノード→DONKI APIから太陽フレアデータを取得
3️⃣If
ノード→classTypeが「C」を含む場合のみフィルタリング
4️⃣
PostBin/PostBin1 ノード→ フィルタリングされたデータを PostBin に保存
5️⃣
PostBin2/PostBin3 ノード→ 保存されたデータ要求 ID に基づいて追加処理を実行可能

5.予想される結果と出力📊

出力例:

PostBinに保存されたデータ:
There was a solar flare of class C3.2
特定の条件を満たす太陽フレアデータのみが保存されます。
ユーザーはPostBinを介して保存されたデータを確認できます。
このワークフローを実行すると、NASA DONKI APIからリアルタイムの太陽フレアデータをインポートして自動的にフィルタリングして保存できます。 🚀