GitHubプロファイルデータをGoogleスプレッドシートに自動収集 - n8n ワークフロー

この高度なn8nワークフローを使用すると、詳細なGitHubプロファイルを自動的にスクレイピングし、BrowserAct n8nノードを利用してリポジトリやリンクを抽出し、データを動的なGoogleスプレッドシートレポートに構造化できます。データリッチ化のための理想的なn8nテンプレートです。

ワークフロープレビュー

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

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

こんな方におすすめ

潜在的な開発者候補に関する包括的なデータを収集したいリクルーターやソーサー
Webソースから構造化されたリッチなデータを必要とするデータアナリスト
n8nワークフロー内で高度な動的スプレッドシート管理の例を探している自動化スペシャリスト
n8nノードを使用して複雑なWebスクレイピング出力を処理するための堅牢なシステムを必要とするBrowserActの利用者

概要

この高度なn8nワークフローは、データリッチ化エンジンとして機能します。基本的なGitHub URLリストを詳細で整理されたレコードに変換するという課題を解決します。Googleスプレッドシートのソースリストから始まり、n8nワークフローはBrowserAct n8nノードを使用して各プロファイルに対してヘッドレスブラウザスクレイピングを実行します。重要な点として、複雑なスクレイピングタスクから生じがちな、乱雑なJSON出力を修正・統合するためにCode n8nノードを含んでいます。最後に、全データを単一のシートに投入するのではなく、このn8nテンプレートはGitHubユーザー専用の整理されたシート(タブ)を動的に作成し、プロファイル情報、リンク、リポジトリのクリーンなデータ分離を保証します。この構造レベルにより、生成されたレポートは即座に行動に移せるものになります。

仕組み

プロセス全体は、手動のn8nトリガーによって開始されるか、スケジュール実行するように設定できます。


  1. 入力の読み込み: n8nワークフローは、指定されたソースGoogleシートからGet row(s) in sheet n8nノードを介してGitHub URLのマスターリストを読み込むことから始まります。

  2. 反復処理: Loop Over Items n8nノードにより、各プロファイルURLが順次処理され、ユーザーごとに独立した実行パスが作成されます。

  3. スクレイピングの実行: Slackメッセージが送信され、タスクの開始が確認されます。その後、Run a workflow task (BrowserAct) n8nノードが外部スクレイピングジョブを起動し、プロファイルURLを入力として渡します。

  4. 待機と取得: Get details of a workflow task n8nノードは、スクレイピングタスクが完了するまでn8nワークフローの実行を一時停止し、生の出力データを取得します。

  5. データ修正と統合: 専用のCode in JavaScript n8nノードが、生の出力を受け取り、JSONのフォーマットエラー(キーの引用符の欠落など)を正規表現で修正し、抽出されたすべてのデータポイント(プロファイル概要、リンク、リポジトリ)を単一のクリーンなデータアイテムに統合します。

  6. 動的なシート作成: 新しく処理されたユーザーのために、n8nワークフローはユーザー名に基づいた新しいGoogleシートのタブを動的に作成し、既存のデータをクリアし、ヘッダーを設定します。

  7. 出力の整形: 統合されたデータは、3つのカテゴリ(ユーザーデータ(プロファイル概要)、ユーザーリンク、ユーザーリポジトリ)にSplit Out n8nノードを使用して分割されます。

  8. 最終書き込み: データセグメントごとに、個別のAppend row in sheet Google Sheets n8nノードを使用して、ユーザー専用シートに書き込まれ、構造化されたレポートが完成します。

インストールガイド

このn8nワークフローテンプレートをデプロイするには、以下の手順に従ってください。


  1. インポート: 提供されたJSONを、「JSONからインポート」オプションを使用してn8nインスタンスにコピーします。

  2. Google Sheets認証情報の設定: Google SheetsのOAuth2 API認証情報を設定します。入力スプレッドシート(URLという名前の列にURLリストを含む)と出力スプレッドシート(抽出されたデータが書き込まれる場所)の両方を指定する必要があります。

  3. BrowserActの設定: BrowserActのAPI認証情報を設定します。必要な外部BrowserActテンプレートがアクティブになっていることを確認し、Run a workflow task n8nノードを更新するためにそのワークフローIDを控えておきます。

  4. Slackの設定(オプションだが推奨): SlackのOAuth2 API認証情報を設定し、実行アラートのためにSend a message n8nノード内のチャンネルIDを更新します。

  5. 実行: 手動のn8nトリガーを使用してn8nワークフローをテストするか、スケジュール実行のために「アクティブ」ステータスに設定します。

ノード詳細

このn8nワークフローは、フローとデータ変換を管理するために、いくつかのコアおよびコミュニティのn8nノードタイプに依存しています。

「ワークフローを実行」をクリックしたとき (ManualTrigger): データパイプラインを手動で実行するために使用される主要なn8nトリガーです。
Google Sheets (Get row(s) in sheet): 事前に定義した入力スプレッドシートから対象のGitHub URLリストを取得します。
Loop Over Items (SplitInBatches): 取得したすべてのURLに対して自動化プロセス全体が個別に実行されることを保証するフロー制御n8nノード。データ整合性を維持します。
BrowserAct (Run a workflow task/Get details of a workflow task): これらの専門的なn8nノードは、外部のWebスクレイピングサービスとの連携を処理します。スクレイピングタスクを開始し、リッチで詳細なJSON出力を待ち受けます。
主要な設定: BrowserActテンプレートのTarget_Pageパラメータに={{ $json.URL }}を渡します。
Code in JavaScript (Code n8n node): データクレンジングに不可欠です。このn8nノードはJavaScriptを使用して、不正なJSON文字列に正規表現による修正を適用し、クリーン化された文字列を解析し、単一の統合されたアイテムにデータオブジェクトをまとめた後、Sheetsに書き込みます。
Google Sheets (Create sheet, Clear sheet, Append row in sheet): 出力を管理します。Create sheet n8nノードは動的式 (={{ $json.Name }}) を使用して、各ユーザーレポートに一意のタブを生成します。
Split Out n8n node: 3回使用されます (Split Out1, Split Out, Split Out2)。単一の統合されたデータアイテムを、行ごとの書き込み(例:ユーザープロファイル情報とリポジトリのリストを分離)に適した個別のリストに分割するために使用されます。

関連するn8nワークフロー

無料

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

I’m a PhD in Physics turned AI enthusiast, passionate about uncovering how AI is transforming content creation, business, and daily life.

特徴*