🥳Scrapeless Communityに参加して、強力なWebスクレイピングツールキットにアクセスするために無料トライアルを取得してください!
ブログに戻ります

「n8nでScrapelessを使用してAI駆動のパイプラインを構築する方法は?」

Emily Chen
Emily Chen

Advanced Data Extraction Specialist

19-May-2025

イントロダクション

今日のデータ駆動型の状況において、組織はウェブコンテンツを抽出、処理、分析するための効率的な方法を必要としています。従来のウェブスクレイピングは、多くの課題に直面しています:ボット対策、複雑なJavaScriptレンダリング、そして常時メンテナンスの必要性があります。さらに、非構造化のウェブデータを理解するには洗練された処理が必要です。

このガイドでは、n8nワークフロー自動化、Scrapelessウェブスクレイピング、インテリジェント抽出のためのClaude AI、そしてセマンティックストレージのためのQdrantベクトルデータベースを使用した完全なウェブデータパイプラインの構築方法を示します。知識ベースを構築したり、市場調査を行ったり、AIアシスタントを開発したりする際に、このワークフローは強力な基盤を提供します。

作成するもの

私たちのn8nワークフローは、いくつかの最先端技術を組み合わせています:

  • Scrapeless Web Unlocker:JavaScriptレンダリングを用いた高度なウェブスクレイピング
  • Claude 3.7 Sonnet:AI駆動のデータ抽出と構造化
  • Ollama Embeddings:ローカルベクトル埋め込み生成
  • Qdrantベクトルデータベース:セマンティックストレージと検索
  • 通知システム:Webhookを介したリアルタイム監視

このエンドツーエンドパイプラインは、混乱したウェブデータを構造化されたベクトル化情報に変換し、セマンティック検索やAIアプリケーションの準備が整います。
n8n、Scrapeless、およびClaudeを使用したAI駆動のウェブデータパイプラインの構築

インストールとセットアップ

n8nのインストール

n8nはNode.js v18、v20、またはv22を必要とします。バージョンの互換性の問題が発生した場合:

Copy
# Node.jsのバージョンを確認
node -v

# 新しい非サポートバージョン(例:v23+)を持っている場合、nvmをインストール
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
# Windowsの場合は、NVM for Windowsインストーラーを使用

# 互換性のあるNode.jsバージョンをインストール
nvm install 20

# インストールしたバージョンを使用
nvm use 20

# n8nをグローバルにインストール
npm install n8n -g

# n8nを実行
n8n

n8nインスタンスは、http://localhost:5678で使用できるようになっているはずです。

Claude APIの設定

  1. Anthropic Consoleにアクセスし、アカウントを作成
  2. APIキーセクションに移動
  3. 「キーを作成」をクリックし、適切な権限を設定
  4. n8nワークフローで使用するためのAPIキーをコピー(AIデータチェッカー、Claudeデータ抽出ツール、Claude AIエージェントで)
Claude APIの設定

Scrapelessのセットアップ

  1. Scrapelessにアクセスし、アカウントを作成
  2. ダッシュボードのユニバーサルスクレイピングAPIセクションに移動 https://app.scrapeless.com/exemple/overview
Scrapelessの設定
  1. n8nワークフローで使用するためのトークンをコピー
n8nワークフローで使用するためのトークンをコピー

このcurlコマンドを使用してScrapelessのウェブスクレイピングリクエストをカスタマイズし、n8nのHTTPリクエストノードに直接インポートできます:

Copy
curl -X POST "https://api.scrapeless.com/api/v1/unlocker/request" \
  -H "Content-Type: application/json" \
  -H "x-api-token: scrapeless_api_key" \
  -d '{
    "actor": "unlocker.webunlocker",
    "proxy": {
      "country": "ANY"
    },
    "input": {
      "url": "https://www.scrapeless.com",
      "method": "GET",
      "redirect": true,
      "js_render": true,
      "js_instructions": [{"wait":100}],
      "block": {
        "resources": ["image","font","script"],
        "urls": ["https://example.com"]
      }
    }
  }'
Scrapelessのウェブスクレイピングリクエストをカスタマイズできます

Dockerを使ったQdrantのインストール

Copy
# Qdrantイメージをプル
docker pull qdrant/qdrant

# データ永続性を持つQdrantコンテナを実行
docker run -d \
  --name qdrant-server \
  -p 6333:6333 \
  -p 6334:6334 \
  -v $(pwd)/qdrant_storage:/qdrant/storage \
  qdrant/qdrant

Qdrantが実行されていることを確認:

Copy
curl http://localhost:6333/healthz

Ollamaのインストール

macOS:

Copy
brew install ollama

Linux:

Copy
curl -fsSL https://ollama.com/install.sh | sh

Windows: Ollamaのウェブサイトからダウンロードしてインストールしてください。

Ollamaサーバーを起動:

Copy
ollama serve

必要な埋め込みモデルをインストール:

Copy
ollama pull all-minilm

モデルのインストールを確認:

Copy
ollama list

n8nワークフローの設定

ワークフローの概要

私たちのワークフローは、これらの主要なコンポーネントで構成されています:

  1. 手動/スケジュールトリガー:ワークフローを開始
  2. コレクションチェック:Qdrantコレクションが存在するか確認
  3. URL設定:ターゲットURLとパラメータを設定
  4. Scrapelessウェブリクエスト:HTMLコンテンツを抽出
  5. Claudeデータ抽出:データを処理し構造化する
  6. Ollama 埋め込み: ベクトル埋め込みを生成します
  7. Qdrant ストレージ: ベクトルとメタデータを保存します
  8. 通知: Webhook を通じてステータス更新を送信します

ステップ 1: ワークフロートリガーとコレクションチェックの設定

手動トリガーノードを追加し、その後に HTTP リクエストノードを追加して、Qdrant コレクションが存在するかどうかを確認します。この初期ステップでコレクション名をカスタマイズできます。ワークフローは、存在しない場合に自動的にコレクションを作成します。

重要な注意: デフォルトの「hacker-news」と異なるコレクション名を使用したい場合は、Qdrant を参照するすべてのノードで一貫して変更してください。

ステップ 2: Scrapeless Web リクエストの設定

Scrapeless ウェブスクレイピング用の HTTP リクエストノードを追加します。以前提供された curl コマンドを参考にしてノードを設定し、YOUR_API_TOKEN を実際の Scrapeless API トークンに置き換えます。

Scrapeless Web Unlocker でより高度なスクレイピングパラメータを設定できます。

ステップ 3: Claude データ抽出

HTML コンテンツを処理するノードを追加します。認証のために Claude API キーを提供する必要があります。Claude エクストラクターは HTML コンテンツを分析し、JSON 形式で構造化データを返します。

ステップ 4: Claude 出力のフォーマット

このノードは Claude の応答を受け取り、関連情報を抽出して適切にフォーマットし、ベクトル化のために準備します。

ステップ 5: Ollama 埋め込み生成

このノードは構造化されたテキストを Ollama に送信して埋め込みを生成します。Ollama サーバーが実行中であり、all-minilm モデルがインストールされていることを確認してください。

ステップ 6: Qdrant ベクトルストレージ

このノードは生成された埋め込みを取得し、それを関連メタデータと共に Qdrant コレクションに保存します。

ステップ 7: 通知システム

最終ノードは、構成された webhook を通じてワークフロー実行のステータスを通知します。

一般的な問題のトラブルシューティング

n8n Node.js バージョンの問題

以下のようなエラーが表示された場合:

Copy
Your Node.js version X is currently not supported by n8n.
Please use Node.js v18.17.0 (recommended), v20, or v22 instead!

nvm をインストールし、設定セクションに記載された互換性のある Node.js バージョンを使用して修正します。

Scrapeless API 接続の問題

  • API トークンが正しいか確認してください
  • API レート制限に引っかかっていないか確認してください
  • 正しい URL フォーマットになっているか確認してください

Ollama 埋め込みエラー

一般的なエラー: connect ECONNREFUSED ::1:11434

修正:

  • Ollama が実行中であることを確認: ollama serve
  • モデルがインストールされていることを確認: ollama pull all-minilm
  • localhost の代わりに直接 IP (127.0.0.1) を使用してください
  • 他のプロセスがポート 11434 を使用していないか確認してください

高度な使用シナリオ

複数の URL のバッチ処理

一度のワークフロー実行で複数の URL を処理するには:

  1. Split In Batches ノードを使用して URL を並行して処理します
  2. 各バッチに対して適切なエラーハンドリングを設定します
  3. Merge ノードを使用して結果を結合します

定期データ更新

スケジュールされた更新でベクトルデータベースを最新の状態に保ちます:

  1. 手動トリガーをスケジュールノードに置き換えます
  2. 更新頻度を設定します (日次、週次など)
  3. If ノードを使用して新規または変更されたコンテンツのみを処理します

カスタム抽出テンプレート

Claude の抽出をさまざまなコンテンツタイプに適応させます:

  1. ニュース記事、製品ページ、文書などの特定のプロンプトを作成します
  2. Switch ノードを使用して適切なプロンプトを選択します
  3. 抽出テンプレートを環境変数として保存します

結論

この n8n ワークフローは、Scrapeless ウェブスクレイピング、Claude AI 抽出、ベクトル埋め込み、および Qdrant ストレージの強みを組み合わせた強力なデータパイプラインを作成します。これらの複雑なプロセスを自動化することで、取得の技術的課題よりも抽出されたデータの利用に集中できます。

n8n のモジュラーな性質は、このワークフローを追加の処理ステップ、他のシステムとの統合、または特定のニーズに応じたカスタムロジックで拡張できることを可能にします。AI 知識ベースの構築、競合分析の実施、またはウェブコンテンツの監視を行う場合でも、このワークフローは堅固な基盤を提供します。

Scrapelessでは、適用される法律、規制、およびWebサイトのプライバシーポリシーを厳密に遵守しながら、公開されているデータのみにアクセスします。 このブログのコンテンツは、デモンストレーションのみを目的としており、違法または侵害の活動は含まれません。 このブログまたはサードパーティのリンクからの情報の使用に対するすべての責任を保証せず、放棄します。 スクレイピング活動に従事する前に、法律顧問に相談し、ターゲットウェブサイトの利用規約を確認するか、必要な許可を取得してください。

最も人気のある記事

カタログ