業務自動化

n8nで競合価格を自動スクレイピング→スプレッドシート監視 週3時間を削減

小売 / EC / 製造業 (価格戦略が重要な業種全般) の業務自動化レシピ
業種小売 / EC / 製造業 (価格戦略が重要な業種全般)
ツールn8n + HTTP Request/HTML抽出 + Google スプレッドシート
難易度★★☆ 中
設定時間約 100 分

競合の価格を毎日ブラウザで開いて確認していませんか。この確認作業を n8n に任せ、Google スプレッドシートに自動記録・変動検知するところまでの手順をまとめました。設定は約100分、費用はセルフホストなら実質¥0からです。

読了時間: 約10分 / 想定読者: 価格戦略を運用する小売・EC・製造業の経営者・個人事業主 / 難易度: ★★☆ (Googleスプレッドシートと簡単な設定画面操作ができれば可)

編集長 Mira の見解

価格監視は「競合が値下げした瞬間に気付けるかどうか」で打ち手のスピードが変わります。とはいえ、この記事で紹介する方法は万能ではありません。技術的にスクレイピングができることと、法的・契約的に許されることは別問題です。対象サイトの利用規約で自動収集を禁止している場合や、ログインが必要な会員限定ページは対象から外してください。まずは自社の公開情報や、利用規約上スクレイピングが明確に禁止されていない範囲の価格ページ 1〜2 件から始め、robots.txt を尊重したリクエスト間隔で運用することをおすすめします。

このレシピで解決する課題

価格戦略を運用する中小企業では、競合の価格確認が特定の担当者の毎日のルーティンになりがちです。編集部が想定する典型的な困りごとは次の4つです。

  1. 手作業の巡回: 複数の競合サイトを毎朝ブラウザで開き、価格をメモ帳やExcelに手入力している
  2. 変化の見落とし: 価格改定に気付くのが数日〜1週間後になり、対抗値付けのタイミングを逃す
  3. 属人化: 価格チェックができるのが特定の担当者だけで、休むと確認が止まる
  4. 記録の散在: 「先月はいくらだったか」を振り返るための履歴が残っていない

このうち1・3・4は取得と記録の自動化でほぼ解消できます。2も「毎日決まった時間に差分が分かる」状態にすれば、対応の意思決定を前倒しできます。次のセクションで、全体の流れを図で確認します。

自動化の全体フロー

競合サイト → n8n → Google スプレッドシート
01
定時起動
毎日1回 n8n が起動
🌐
02
ページ取得
HTTP Request ノードで価格ページを取得
🔍
03
価格を抽出
HTML抽出ノードでCSSセレクタから価格を切り出す
📊
04
シートに追記
履歴タブへ1行ずつ追加
05
変動を検知
前回値と比較し差分があれば通知

スケジュール実行なので、対象サイト側の追加設定は不要です。ただしリクエスト間隔は必ず空けてください。

ポイントは03の「価格を抽出」です。ページのHTML構造は各サイトで異なるため、CSSセレクタは対象サイトごとに個別に確認する必要があります。次のセクションで、この構成にかかる費用を整理します。

費用の比較 — n8n Cloud とセルフホスト

n8n は公式サイトによればドイツのn8n GmbHが開発する業務自動化ツールで、GitHub上のソースコードを自分のサーバーで動かすセルフホスト版は無料で使えます。公式料金ページに掲載されているクラウド版の価格は下表のとおりです。

使い方月額 (公式表記)編集部換算 (€1 = ¥170)実行回数の上限編集部の評価
セルフホスト (Community版)無料サーバー代のみ制限なし◎ サーバーを触れる人がいるなら最有力
n8n Cloud Starter€20 / 月 (年払い)約¥3,400月2,500回○ 1日1回×競合数件なら十分な余裕
n8n Cloud Pro€50 / 月 (年払い)約¥8,500月10,000回△ 監視対象サイトを多数抱える段階から

n8nの課金は実行 (execution) 単位で、途中のステップ数や取得件数では変わりません。「毎日1回、競合サイト5件をまとめて取得する」構成なら、月の実行回数はおよそ30回程度です。

💡 編集部のコスト設計ヒント

1日1回・競合5件の定時実行なら月30回程度で、Starterプランの月2,500回に対してごくわずかしか使いません。監視対象を増やしても当面はプラン変更不要です。セルフホストを選ぶ場合はHetzner Cloudのような格安クラウドサーバーが一般的で、月額の目安は¥700〜¥1,500程度です。導入手順はn8nのセルフホスト構築レシピに詳しくまとめています。

費用感が掴めたところで、着手前に必ず確認すべき法的な注意点を確認します。

スクレイピングの法的注意点 (★必ず確認)

⚠️ 編集部の警告 (最重要・着手前に必ず確認)

Webサイトの情報を自動収集する際は、技術的にできることと、法的・契約的に許されることは別問題です。着手前に必ず以下の3点を確認してください。確認できない、または規約で禁止されている場合はこのレシピの対象外としてください。

⚠️ 対象外にすべきケース

ログインが必要な会員限定価格ページ、個人情報を含むページ、利用規約で明確に自動収集を禁止しているサイトは、このレシピの対象外です。事業として本格的に運用する前に、顧問弁護士や専門家に一度確認することを強くおすすめします。

法的な注意点を踏まえたうえで、着手前に揃えておくものを確認します。

準備するもの

着手前に、下表の3つを手元に揃えてください。所要時間は編集部が実際の設定手順を分解して見積もった目安です。

準備するもの費用所要時間補足
監視対象ページのURLリストと利用規約確認¥0約20分規約でスクレイピングが禁止されていないか事前確認
Google アカウントと空のスプレッドシート¥0約10分個人のGmailアカウントでも可
n8n の環境 (Cloud またはセルフホスト)¥0〜¥3,400 / 月約20分Cloudなら登録するだけ
Google Cloud のプロジェクトと認証情報¥0約30分Sheets APIを有効化して認証情報を作成

準備が揃ったら、いよいよ設定に入ります。

設定手順 — 100分の内訳

初期構築の5ステップ
0-20分
対象ページの規約確認とCSSセレクタの特定
監視したい価格ページの利用規約とrobots.txtを確認し、収集可否を判断します。問題なければブラウザの開発者ツールで価格が表示されているHTML要素のCSSセレクタ (例: .price#product-price) を特定します。
20-40分
n8nを用意して基本設定
n8n Cloudに登録するか、セルフホスト版を起動します。Schedule Triggerノードで毎日決まった時間に起動する設定を作ります。
40-65分
HTTP RequestとHTML抽出ノードを組む
HTTP Requestノードで対象ページを取得し、HTML抽出ノードで特定したCSSセレクタから価格テキストを切り出します。複数サイトを監視する場合はノードを対象数分並べるか、Loop機能で順に処理します。
65-85分
Google スプレッドシートへ接続
Google Cloudで新規プロジェクトを作り、Google Sheets APIを有効化します。n8n側でGoogle Sheetsの認証情報を追加し、書き込み先のスプレッドシートを共有設定で接続します。Code ノードで数値の抽出・整形 (「¥12,800」→ 12800 など) を行い、履歴タブへAppendで書き込みます。
85-100分
差分検知とテスト実行
IF ノードで前回値と今回値を比較し、差分があればSlackやメールに通知する分岐を追加します。手動実行して履歴タブに正しく記録されるか確認し、問題なければワークフローをActiveに切り替えて完了です。

所要時間は編集部が手順を分解して見積もった目安です。

n8n公式のCodeノードのドキュメントには、JavaScriptで自由にデータ加工できる旨が説明されています。価格テキストから数値だけを取り出す処理はCodeノードで数行のコードを書くのが最も確実です。

なおn8nのノード設定欄では、前のノードの値を差し込むために二重波括弧の式 ({{ $json.フィールド名 }} のような書き方) を使います。ステップ間で値を渡す箇所はこの記法になる、と覚えておいてください。

ワークフローが動いたら、次は受け皿となるシートの作り方です。

履歴シートの設計

シートは2タブ構成にすると運用が楽になります。編集部が推奨する列構成は次のとおりです。

タブ役割
履歴取得日時 / 競合名 / 商品名 / 価格 / URLn8nが追記する生データ。人は触らない
サマリー競合名 / 商品名 / 最新価格 / 前回価格 / 差分 / 更新日関数で履歴から最新値を集計。毎日はここだけ見る

「履歴タブは機械が書く、サマリータブは関数が読む」と役割を分けるのが要点です。人が履歴タブに手入力すると、次の自動追記で行がずれて集計が壊れます。

⚠️ よくある失敗: CSSセレクタのずれで誤検知

最も多い失敗は、対象サイトがデザイン変更した際にCSSセレクタが古いままになり、価格以外のテキスト (「在庫あり」等) を誤って取得してしまうケースです。定期的に (月1回程度) 実際の取得結果を目視確認し、想定外の値が入っていないかチェックしてください。

もう1つ、規模が大きくなったときに効いてくる制限があります。Google Sheets APIの公式クォータでは、書き込みリクエストがプロジェクトあたり毎分300回、ユーザーあたり毎分60回に制限されており、超えると429エラーが返ります。1日1回・数件の追記であれば通常の運用で問題になることはまずありません。

次に、費用面で使える制度を確認します。

補助金は使えるか

💡 IT導入補助金という選択肢

n8nの月額そのものは補助対象になりにくいものの、価格戦略を含む販売管理システムの導入と組み合わせた申請では対象になる可能性があります。制度の枠組みと申請準備の進め方はIT導入補助金2026の記事にまとめています。年商規模が小さい個人事業主なら小規模事業者持続化補助金のほうが使い勝手が良い場合もあります。いずれも申請が通ること (採択) は保証されないため、補助金ありきの計画は避けてください。

投資対効果 (ROI) の観点では、n8n Cloud Starterで月¥3,400程度、セルフホストなら月¥1,000前後です。編集部の想定で毎日の価格チェック作業が週3時間削減されると考えれば、投資回収は早い部類に入ります。補助金を待つより、まず動かしてしまうほうが早いという判断も十分に成り立ちます。

最後に、編集部に届くことの多い疑問をまとめておきます。

よくある質問

Q. ノーコードで完結させたいのですが。 A. 今回のようにHTTP RequestとHTML抽出ノードを組み合わせる方法は、CSSセレクタの特定など多少の技術的な確認が必要です。画面操作だけで完結させたい場合は、Browse AIの解説記事のような画面操作型のツールの方が向いています。

Q. Firecrawlのような専用ツールとの違いは。 A. Firecrawlの解説記事で紹介した通り、Firecrawlはページ全体をAIが扱いやすい形に変換するAPIです。今回のように「価格という1つの数値だけを継続的に追いたい」用途では、n8nでCSSセレクタを指定して必要な値だけを抜き出す方が費用を抑えやすい構成になります。

Q. 複数の競合サイトを監視したいです。 A. 対象サイトごとにHTTP Request + HTML抽出のノードセットを追加するか、URLリストをGoogle スプレッドシートで管理してLoop機能で順に処理する構成が管理しやすくなります。同様の定期集計の考え方はn8n + Shopify + Google スプレッドシートのレシピでも解説しています。

Q. JavaScriptで描画される価格 (SPA) は取得できますか。 A. HTTP Requestノードは静的HTMLの取得が基本のため、JavaScriptで後から描画される価格は取得できないことがあります。その場合はBrowserless等のヘッドレスブラウザサービスと組み合わせる、より高度な構成が必要です。

出典・参考情報

※ 本記事の日本円換算は€1 = ¥170の概算で、2026年7月時点の目安です。実際の請求額は為替と各社の改定により変動します。料金は必ず公式ページで最新の値をご確認ください。試算・シミュレーションと明記した箇所は編集部独自の想定であり、実際の効果を保証するものではありません。法的な論点については一般的な留意点の紹介であり、個別の法律相談ではありません。具体的な利用にあたっては専門家にご確認ください。


Mira / AI経営ラボ 編集長

n8n + HTTP Request/HTML抽出 + Google スプレッドシート を無料で試す → ※ PR・アフィリエイトリンクを含みます