🧠 概要:
概要
この記事は、次世代ウェブクローラー「WaterCrawl」の特徴や、それを利用するためのDifyとの連携方法について解説しています。WaterCrawlは高性能なオープンソースウェブクローラーであり、Dify上でのアプリケーション作成を通じて、ウェブ上の情報を効率的に収集する方法を紹介し、具体的な使用例やアカウントの設定手順も示しています。
要約の箇条書き
-
WaterCrawlについて
- Python、Django、Scrapy、Celeryを使用したオープンソースのウェブクローリングフレームワーク。
- 大規模言語モデル向けに最適化されている。
-
主な特徴
- 高度なクローリングとスクレイピングが可能。
- 強力な検索エンジン機能(深度設定あり)。
- 多言語・国別ターゲティング。
- 非同期リアルタイム処理。
- REST API・OpenAPIサポート。
- AIプラットフォームとのシームレス連携。
- 自己ホスト型での運用が可能。
-
料金プラン
- 無料プランは月間1,000クレジット、最大深度2、データ保持7日間。
-
活用例
- LLM用コーパスの収集。
- リアルタイムSEO監視。
- 法務文書アーカイブの共有。
-
Difyでの利用方法
- WaterCrawlアカウントの作成手順や、APIキーの登録方法。
- マーケットプレイスからWaterCrawlプラグインのインストール手順。
- Difyでのアプリケーション作成に関する具体例(URL入力でページ内容を要約するアプリなど)。
- 動作確認
- 作成したアプリで実際にURLを入力して動作を確認した結果を示す。
この記事は、5月29日(木)時点での内容になります。そのため読まれる時期によっては内容が古くなっていたりする場合がございます。あらかじめご了承ください。また、本記事では、WaterCrawlの特徴や料金プランに加えて、主にDifyからWaterCrawlを扱う方法について解説します。
今回作成するDifyアプリについて
この記事では、WaterCrawlとDifyを連携して以下のようなワークフローを作成します。このアプリでは、URLを入力すると、そのページについてスクレイピングを行い、そのサイトについて300文字程度で解説するアプリになります。この記事で解説する方法を応用することで様々な応用が可能です。ぜひ最後までお読みいただけますと幸いです。
WaterCrawlを用いてhttps://dify.ai/jpについて解説
Difyの基本から応用まで学びたい方へ
非エンジニアのためのDify超入門コースでは、Difyの基本からさまざまなアプリ開発を通してDifyを学べるコースです。Difyを業務で活用したい方はぜひご活用ください!
WaterCrawlとは?
WaterCrawl(ウォータークロール)は、Python、Django、Scrapy、Celeryをベースに開発されたオープンソースの高性能ウェブクローリングフレームワークです。特に大規模言語モデル(LLM)向けのデータ整備に最適で、柔軟かつ効率的にウェブ上の情報を収集・整理できます。
WaterCrawlの特徴
WaterCrawlの主要機能と特徴については以下のとおりです。
1. 高度なクローリング&スクレイピング
深度、スピード、対象コンテンツを細かく設定可能です。特定のデータだけを素早く効率よく収集できます。
2. 強力な検索エンジン機能
検索深度は「基本」「詳細」「究極」の3レベルがあります。必要な情報をウェブ全体から正確に抽出できます。
3. 多言語・国別ターゲティング対応
複数言語のクローリングに対応し、グローバルなデータ収集に最適です。
4. 非同期リアルタイム処理
Server-Sent Events(SSE)を使い、進行状況をリアルタイムで把握できます。
5. REST API・OpenAPIサポート
APIドキュメントと豊富なクライアントSDK(Python, Node.js, Go, PHP, Rust)を提供し、容易なシステム統合が可能です。
6. AIプラットフォームとのシームレス連携
Dify.aiやn8n、Langflow、Flowiseなど、さまざまな自動化・AIサービスとの統合が可能で、幅広いワークフローに対応しています。
7. 自己ホスト型&オープンソース
完全なデータ管理が可能で、自社環境やVPC内に安全にデプロイできます。
料金プランについて
無料プランでは、月間1,000クレジット(ページ数×レンダリング方式で計算)の利用に加え、深度は最大2まで、データ保持期間は7日間(定期的なデータのエクスポート推奨)という制約内であれば無料で利用が可能です。
WaterCrawl と Dify の活用例
WaterCrawlはDify.aiのHTTP Requestノードやナレッジベースとの連携が可能です。
-
LLM用コーパスの収集
WaterCrawlで収集したデータをDify.aiでナレッジベースとして保存し、AIチャットやQ&Aに活用可能。 -
リアルタイムのSEO監視
WaterCrawlのデータをDify.aiで定期的に分析・モニタリングすることが狩野。 -
法務文書アーカイブ
セルフホスト版WaterCrawlで収集した情報を、Dify経由で社内共有可能。
WaterCrawlに登録する
それではWeb版(クラウド版)よりアカウント作成して利用してみましょう。
https://watercrawl.dev/ にアクセスします。右上の「Get started」ボタンを押します。
以下のページに遷移しますので、青字の「Create an account」からアカウントを新規に作成するか、GoogleかGithubアカウントを用いることで登録することができます。
たとえば、「Create an account」を押すと、以下のページに遷移しますので、名前とEmail、パスワードを入力しアカウントを作成します。
「Create account」ボタンを押すと、ご登録のメールアドレス宛に確認メールが送信されます。メール内のリンクをクリックしてアカウントを確認してください。
以下のような認証メールが届きます。
確認メールが届きます。
Verify Emailボタンを押すと、以下の画面が表示されますので「Go to Dashboard」を押すことで、ダッシュボードページに遷移します。
以下のダッシュボードページでは、プライバシーポリシーおよび利用規約を同意するようなポップアップウィンドウが表示されますので、読んだ後にチェックをつけ、右下の「Confirm and Continue」ボタンを押しましょう。
これでアカウント登録が無事に完了です!
WaterCrawlのダッシュボードページ
WaterCrawlのダッシュボードページの左メニューには、Playground、Activity Logs、Usage、API Keys、Settings、Profileなどが表示されています。
Playgroundでは、CrawlとSearchの2種類があります。Crawlでは、リアルタイムで様々なクローリング構成をテストし、実験することができます。Search Playground(beta)では、リアルタイムで様々なインターネット検索設定をテストし、実験することが可能です。
Activity Logsでは、上記2種類のログが蓄積されるため、確認ができます。
API Keysでは、API Keyを新しく発行したり、削除したりすることが可能です。
上の黄土色のメッセージに「Upgrade now」と書かれた表示がされますので、こちらのページに遷移します。左下の「Activate Free Plan」ボタンを押します。
以下の状態になればAPI Keyを利用することが可能です。
必ずActive状態にしましょう!!Difyで動作する際にエラーが発生します。
すでにAPI KeyがDefaultで発行されていますので、こちらをコピーしておきましょう。後ほどDify側から利用する際に必要になります。コピーは以下のアイコンをクリックすることでコピーが可能です。
WaterCrawlをローカルで利用する
この記事では詳細については割愛しますが、Dockerを用いることで、WaterCrawlをローカルから利用することが可能です。
git clone https:cd watercrawl/dockercp .env.example .envdocker compose up -d
DifyからWaterCrawlのAPI登録を行う。
Difyの設定画面のデータソースから連携を行うことが可能です。
https://cloud.dify.ai/explore/apps
データソースの一番下に「WaterCrawl」の設定が表示されます。「設定」ボタンをクリックします。
先ほどコピーしたAPI Keyを貼り付けて、保存ボタンを押します。
保存が完了すると、アクティブ状態になります。
API 登録した後の画面
マーケットプレイスからWaterCrawlプラグインをインストールする
続いて、マーケットプレイスからWaterCrawlプラグインをインストールしましょう。
以下にアクセスして、「WaterCrawl」と検索します。
直接以下のURLからページに飛んでいただいても問題ありません。
右上の「Install」ボタンをクリックします。
「インストールボタン」をクリックします。
無事にインストールされます。
続いて、インストール済みのプラグインページにアクセスします。
WaterCrawlがインストールされていますので、「WaterCrawl」を選択します。
右側に青色の「Authorize」ボタンが表示されますのでクリックします。
以下の画面が右側に表示されますので、WaterCrawlのダッシュボードでコピーしておいたAPI Keyを貼り付けます。
「保存」ボタンを押すと、以下のように「認証済み」と表示されればOKです。
DifyからWaterCrawlを利用する
それでは、DifyからWaterCrawlを利用してみましょう。今回はURLを入力したらそのWebページをクロールするアプリケーションを作成いたします。
それでは、API Keyの登録が済みましたので、チャットフローを新規に作成します。アプリ名は任意につけてください。
上記では、「WaterCrawl連携」というアプリ名にしています。
以下の画面が表示されます。
親の顔より(?)見たこの画面とご対面
「+」からプラグインを選択し、右上の検索窓から「WaterCrawl」と入力すると以下が表示されます。
今回は試しに、一番上の「Scrape Single URL」を選択します。
以下の画面が表示されますので、URL部分に「sys.query」を入れておきます。(今回はURLを入力する想定でアプリを作成します。)
以下のように設定しましょう。
続いて、LLMを選択し、以下のように設定します。AIモデルには「gpt-4o-mini」を選択していますが、Geminiでも4.1でもClaude 4でもなんでもOKです。
プロンプトは適当に簡易的ではありますが、以下のように設定しました。
あなたはプロのリサーチャーです。UserからURLを入力されるので、そのWebサイトの構造をもとにそのページについて300文字程度で概要を解説してください。
動作確認
それでは動作させてみましょう。右上のプレビューを開き、チャット欄にURLを入力します。
今回は「https://dify.ai/jp」を入力してみました。以下のように表示されました。
Views: 0