『n8n×Googleフォーム』スプレッドシート連携によるCSVデータ自動処理システム【DX推進の実践ガイド】
全般
n8nとSlackを連携させ、競合サイトの更新を自動検知する仕組みの作り方を解説します。手動チェックの手間を省き、市場の変化や価格改定をリアルタイムで把握するための具体的な手順を紹介します。ノーコードツールを活用して情報収集の効率と精度を高め、分析業務に集中できる環境を整えましょう。
競合他社の動きを把握する市場調査や競合分析は、ビジネス戦略を立てるうえで欠かせない業務のひとつです。しかし、対象となるWebサイトを毎日手動で巡回し、変更箇所を目視で確認する作業は、担当者にとって大きな負担となっているのが実情ではないでしょうか。
目視によるチェックは時間がかかるだけでなく、細かな価格変更やテキストの修正を見落とすリスクも伴います。こうした課題を解決する手段として注目されているのがワークフロー自動化ツール「n8n」を活用した自動検知システムの構築です。
n8nを使えば、プログラミングの深い知識がなくても、Webサイトの更新情報を自動で取得し、Slackやチャットツールへ即座に通知する仕組みを作成できます。
本記事では、競合サイトの変更を検知してSlackに通知を送る自動化ワークフローの具体的な作成手順を、初心者の方にも分かりやすく解説します。
※n8nのバージョンにより、ノード設定画面の項目名や配置が変更されている場合があります。
n8nとSlackを連携させて競合サイトの監視を行う仕組みについて、まずはその全体像と導入のメリットを整理します。自動化の構造を正しく理解することで、自社の業務に合わせて柔軟に応用するための基礎が固まります。
今回作成するワークフローは、n8nが人間の代わりに定期的にWebサイトへアクセスし、情報の変化を監視するという仕組みです。具体的な処理の流れは以下のようになります。
この一連の流れを自動化することで、担当者がブラウザを開いて確認しにいく手間を省略することが可能になります。
このシステムを導入することで、業務には主に3つのメリットが生まれます。
まず、Webサイトの更新から検知までのタイムラグを最小限に抑え、競合他社の動きをリアルタイムに近い感覚で把握できる「情報取得の即時性」です。
次に、毎日の巡回業務を自動化して工数を削減し、空いた時間をより付加価値の高い分析や対策立案に充てる「業務効率化」が挙げられます。
そして、目視では見逃しやすい細部の変更もデータ比較によって確実に検知し、人の目や集中力に依存しない精度の高いモニタリング体制を構築する「見落としの防止」が可能となります。
ワークフローの作成に取り掛かる前に、必要となるツールのアカウント作成や環境設定を行います。スムーズに進めるために、以下の3つの準備を整えてください。

まず、ワークフローの中核となるn8nの利用環境を整えます。n8nには、サーバー構築不要ですぐに利用できる「クラウド版(n8n Cloud)」と、自社のサーバーなどにインストールして使う「セルフホスト版」があります。
初心者の場合は、環境構築の手間がかからないクラウド版から始めるのがスムーズです。アカウントを作成し、ログイン後のダッシュボードから「Add Workflow」をクリックして、新しいワークフロー作成画面(Canvas)を開いておきましょう。
次に、通知を受け取るSlack側の設定を行います。n8nからSlackへメッセージを送るためには、「Incoming Webhooks」という機能を使用します。

Slackのアプリ管理ページ(Slack API)にアクセスし、「Create New App」を選択します。「From scratch」を選び、アプリ名と通知を送りたいワークスペースを指定します。
左側のメニューから「Incoming Webhooks」を選び、スイッチを「On」に切り替えます。
画面下部の「Add New Webhook to Workspace」ボタンを押し、通知先のチャンネルを選択して許可します。
発行された「Webhook URL」(https://hooks.slack.com/…で始まるURL)をコピーし、手元に控えておきます。
このURLは、n8nがSlackにメッセージを投稿するための「鍵」となる重要な情報です。外部に漏れないよう管理には注意してください。
最後に、Webサイトの情報を一時保存しておくためのデータベースとして、Google Sheetsを用意します。新しいシートを作成し、1行目に見出しを設定します。
A列 | URL(監視したいサイトのURL) |
|---|---|
B列 | CurrentContent(前回取得したテキストデータ) |
C列 | LastChecked(最終確認日時) |
2行目のA列には、実際に監視したいWebサイトのURLを入力しておいてください。B列とC列は空欄のままで構いません。n8nが自動的に書き込みを行います。
準備が整ったら、実際にn8nでワークフローを構築していきます。ここでは6つのステップに分けて、ノード(処理の単位)の設定方法を解説します。
ワークフローの起点となるトリガーを設定します。

テスト段階では、手動で実行ボタン(Execute Workflow)を押して確認するため、設定はそのままでも問題ありませんが、運用時には適切な間隔を指定してください。

監視対象のWebサイトにアクセスし、データを取得する設定を行います。今回は、先ほど作成したGoogle SheetsからURLを読み込み、そのURLに対してアクセスする流れを作ります。
Webサイト全体のHTMLを比較すると、広告や日時の表示など、本質的ではない変更にも反応してしまう可能性があります。そのため、監視したい箇所のテキストだけを抽出します。

ここで「変更があったかどうか」を判定するロジックを組み込みます。

この設定により、テキストの内容が変わっている場合のみ「True」のルートに進み、変更がない場合は「False」へ進んで処理を終了させる分岐が完成します。
変更があった場合(Trueルート)に進んだ先で、Slack通知を行う設定です。

{ “text”: “【変更検知】競合サイトが更新されました!\nURL: <監視対象URL>\n確認日時: <現在日時>” } |
|---|
通知を送っただけでは、次回の実行時にも「Google Sheetsに残っている古いデータ」と比較してしまい、連続して通知が来てしまいます。これを防ぐため、Google Sheetsの情報を最新の状態に更新します。

これで、「検知→通知→データ更新」というサイクルが完成し、次回は新しいデータと比較が行われるようになります。
設定したのにエラーが出る、あるいは通知が来ないといった場合、いくつかの原因が考えられます。よくあるトラブルとその対処法を紹介します。
≪HTTP Requestが403 Forbiddenになる場合≫
Webサイトによっては、スクレイピング(プログラムによる自動アクセス)を拒否する設定になっていることがあります。この場合、「HTTP Request」ノードの「Header」設定で、「User-Agent」という項目を追加し、一般的なブラウザ(Chromeなど)のUser-Agent文字列を入力することで回避できる場合があります。ただし、相手方サーバーへの負荷や利用規約には十分配慮し、アクセス頻度を過剰に上げないよう注意が必要です。
≪Slackに通知が届かない場合≫
n8n上では「Success」と表示されているのにSlackに届かない場合は、Webhooks URLが間違っていないか、または送信するJSONデータの形式に誤りがないかを確認してください。特にJSONのカンマや括弧の閉じ忘れはよくあるミスです。
サイト内の「アクセス数ランキング」や「現在の日時表示」など、毎回変わる部分を監視対象に含めてしまうと、更新のたびに通知が届き、重要な情報が埋もれてしまいます。ステップ3のHTML抽出において、変化を検知したい本文や価格部分だけをピンポイントで指定することが、運用を安定させる重要なポイントです。
また、最初は1日に1回程度の頻度から開始し、様子を見ながら1時間ごとなどに調整していくことをおすすめします。
n8nを活用すれば、高額な専用ツールを導入せずとも、自社の目的に合わせた柔軟な競合サイト監視システムを構築できます。手動での巡回業務から解放されることで、情報の収集スピードと正確性が向上し、より戦略的な業務にリソースを集中できるようになるでしょう。
まずは1つのサイト、1つの要素から監視を始めてみてください。運用に慣れてくれば、複数のサイトを同時にチェックしたり、通知内容をAIに要約させたりといった、より自動化へと発展させることも可能です。ぜひ本記事を参考に、自動化への第一歩を踏み出してください。
株式会社TWOSTONE&Sonsグループでは
60,000人を超える
人材にご登録いただいており、
ITコンサルタント、エンジニア、マーケターを中心に幅広いご支援が可能です。
豊富な人材データベースと創業から培ってきた豊富な実績で貴社のIT/DX関連の課題を解決いたします。
幅広い支援が可能ですので、
ぜひお気軽にご相談ください!