投稿する
📚 Dify・n8nハンズオン講座(木曜日チーム)

DifyでHPをスクレイプ!会社レポート作成入門

Difyのイテレーションブロックを活用し、検索結果からURLを抽出して自動でWebスクレイピングや情報収集を行う高度なワークフロー構築術を解説します。

学習ポイント

  • イテレーションブロックを用いた複数データ(URL等)の効率的な一括処理方法
  • Google Search APIとJina Readerを比較した検索エンジンの使い分けと設定手順
  • パラメータ抽出ノードとコードノード(正規表現)によるデータ整形の違いとメリット

動画では、Difyの強力な機能である「イテレーションブロック」を中心に、外部APIを活用した情報の自動取得と整形プロセスを解説しています。

イテレーションブロックによる反復処理

検索結果として得られた複数のURLを「配列(カンマ区切り)」として扱い、一つひとつのURLに対してWebスクレイピング(Web Scraper)を実行する仕組みを解説します。これにより、手動で行っていた個別のページ確認を自動化し、大量の情報を一括でLLMに入力することが可能になります。処理の流れとして「開始→検索→データ整形(リスト化)→イテレーション→出力」という構造を理解することが重要です。

検索APIの選択:Google Search vs Jina Reader

検索ツールとして「Google Search API」に加え、近年注目されている「Jina Reader (Search the Web)」の設定方法を比較します。Jina Readerは画像情報の読み込みや、より詳細なテキスト抽出に強みがある場合があり、用途に応じた使い分けが推奨されます。Dify内のツール設定からAPIキーを認証し、Queryパラメータを渡すだけで簡単に組み込めます。

コードノード(Python/JS)による高精度なデータ整形

標準の「パラメータ抽出」ノードでエラーが発生する場合や、より確実に特定のURLパターンを抜き出したい場合には、コードノードによる正規表現を用いた処理が有効です。動画内ではChatGPTを活用してコードを生成し、リスト形式を正確に整えることで、後続のイテレーション処理の安定性を向上させるテクニックを紹介しています。

Google Apps Script (GAS) との連携

より実践的な活用例として、スプレッドシートの市町村リストを読み込み、API経由で企業情報を検索して自動でシートに書き戻すワークフローを解説します。ウェブアプリとしてデプロイしたGASのURLをDifyの環境変数(変数名例:GAS1)に設定することで、外部の動的データとDifyを密に連携させることができます。

**紹介されるツール・サービス:**

  • **Dify**: AIワークフロー構築プラットフォーム

  • **Google Search API**: Web検索結果取得用

  • **Jina AI (Jina Reader)**: Webコンテンツの検索・読み取り

  • **Google Sheets & Apps Script (GAS)**: データの保存・管理・外部連携