Apify 自動化 は何をしますか?
Apify の Web スクレイピングアクターを実行し、データセットを管理する機能を Claude Code から直接利用できます。同期または非同期でクローラーを実行し、構造化データを取得し、再利用可能なタスクを作成し、ターミナルから離れることなく実行ログを確認できます。
ツールキットドキュメント: composio.dev/toolkits/apify
セットアップ
- Composio MCP サーバーを設定に追加します:
https://rube.app/mcp - プロンプトに従って Apify アカウントを接続します。エージェントが認証リンクを提供します。
- 利用可能なアクターは apify.com/store で参照できます。各アクターには固有の入力スキーマがあるため、実行前に必ずアクターのドキュメントを確認してください。
コアワークフロー
1. アクターを同期的に実行し結果を取得
アクターを実行し、そのデータセットアイテムを単一の呼び出しで即座に取得します。簡単なスクレイピングジョブに最適です。
ツール: APIFY_RUN_ACTOR_SYNC_GET_DATASET_ITEMS
主要パラメーター:
actorId(必須) -- アクター ID (username/actor-name形式、例:compass/crawler-google-places)input-- アクターのスキーマに一致する JSON 入力オブジェクト。各アクターには固有のフィールド名があります。apify.com/store で正確なスキーマを確認してください。limit-- 返す最大アイテム数offset-- ページネーションのスキップ数format--json(デフォルト)、csv、jsonl、html、xlsx、xmltimeout-- 実行タイムアウト (秒)waitForFinish-- 最大待機時間 (0~300 秒)fields-- 含めるフィールドのカンマ区切りリストomit-- 除外するフィールドのカンマ区切りリスト
プロンプト例: "Google Places スクレイパーを実行して、ニューヨークのレストランを検索し、最初の 50 件の結果を返して"
2. アクターを非同期的に実行
完了を待たずにアクターの実行をトリガーします。長時間のスクレイピングジョブに使用します。
ツール: APIFY_RUN_ACTOR
主要パラメーター:
actorId(必須) -- アクターのスラッグまたは IDbody-- アクターの JSON 入力オブジェクトmemory-- メモリ制限 (MB) (2 の累乗である必要があり、最小 128)timeout-- 実行タイムアウト (秒)maxItems-- 返されるアイテムの上限build-- 特定のビルドタグ (例:latest、beta)
APIFY_GET_DATASET_ITEMS を使用して、実行の datasetId で結果を取得します。
プロンプト例: "example.com の Web スクレイパーアクターを 1024MB のメモリで非同期的に開始して"
3. データセットアイテムの取得
ページネーション、フィールド選択、フィルタリングを行い、特定のデータセットからデータを取得します。
ツール: APIFY_GET_DATASET_ITEMS
主要パラメーター:
datasetId(必須) -- データセット識別子limit(デフォルト/最大 1000) -- 1 ページあたりのアイテム数offset(デフォルト 0) -- ページネーションオフセットformat--json(推奨)、csv、xlsxfields-- 特定のフィールドのみを含めるomit-- 特定のフィールドを除外clean-- Apify 固有のメタデータを削除desc-- 降順 (最新順)
プロンプト例: "データセット myDatasetId から最初の 500 アイテムを JSON 形式で取得して"
4. アクターの詳細を確認
アクターのメタデータ、入力スキーマ、設定を実行前に確認します。
ツール: APIFY_GET_ACTOR
主要パラメーター:
actorId(必須) -- アクター ID (username/actor-name形式または 16 進数 ID)
プロンプト例: "apify/web-scraper アクターの詳細と入力スキーマを表示して"
5. 再利用可能なタスクの作成
定期的なスクレイピングジョブのために、事前設定された入力を持つ再利用可能なアクタータスクを構成します。
ツール: APIFY_CREATE_TASK
タスクを一度構成すると、一貫した入力パラメーターで繰り返しトリガーできます。スケジュールされた、または定期的なデータ収集ワークフローに便利です。
プロンプト例: "Google 検索スクレイパーの Apify タスクを作成して、デフォルトクエリを 'AI スタートアップ'、場所を米国に設定して"
6. 実行とデータセットの管理
アクターの実行を一覧表示し、データセットを参照し、実行の詳細を確認して監視とデバッグを行います。
ツール: APIFY_GET_LIST_OF_RUNS、APIFY_DATASETS_GET、APIFY_DATASET_GET、APIFY_GET_LOG
実行の一覧表示:
- アクターとオプションでステータスでフィルタリング
- 実行の詳細から
datasetIdを取得してデータを取得
データセット管理:
APIFY_DATASETS_GET-- ページネーションですべてのデータセットを一覧表示APIFY_DATASET_GET-- 特定のデータセットのメタデータを取得
デバッグ:
APIFY_GET_LOG-- 実行またはビルドの実行ログを取得
プロンプト例: "Web スクレイパーアクターの最後の 10 回の実行を一覧表示し、最新の実行のログを表示して"
既知の落とし穴
- アクターの入力スキーマは大きく異なります: すべてのアクターには固有の入力フィールドがあります。
queriesやsearch_termsのような汎用的なフィールド名は拒否されます。apify.com/store でアクターのページを確認し、正確なフィールド名 (例: Google Maps のsearchStringsArray、Web スクレイパーのstartUrls) を確認してください。 - URL 形式の要件: URL には必ず完全なプロトコル (
https://またはhttp://) を含めてください。多くのアクターは、URL をurlプロパティを持つオブジェクトとして要求します:{"startUrls": [{"url": "https://example.com"}]}。 - データセットのページネーション上限:
APIFY_GET_DATASET_ITEMSの 1 呼び出しあたりの最大limitは 1000 です。大規模なデータセットの場合は、offsetを使用してループし、すべてのアイテムを収集します。 - 列挙値は小文字: ほとんどのアクターは小文字の列挙値を期待します (例:
relevance、all)。 - 同期タイムアウトは 5 分:
APIFY_RUN_ACTOR_SYNC_GET_DATASET_ITEMSのwaitForFinishの最大値は 300 秒です。より長い実行には、APIFY_RUN_ACTOR(非同期) を使用し、APIFY_GET_DATASET_ITEMSでポーリングします。 - データ量によるコスト: 大規模なデータセットの取得にはコストがかかる場合があります。タイムアウトやメモリ負荷を避けるため、適度な制限と段階的な処理を推奨します。
- JSON 形式推奨: CSV/XLSX 形式も利用可能ですが、自動処理には JSON が最も信頼性があります。下流の自動化では CSV/XLSX を避けてください。
クイックリファレンス
| ツールスラッグ | 説明 |
|---|---|
APIFY_RUN_ACTOR_SYNC_GET_DATASET_ITEMS | アクターを同期的に実行し、結果を即座に取得 |
APIFY_RUN_ACTOR | アクターを非同期的に実行 (トリガーして戻る) |
APIFY_RUN_ACTOR_SYNC | アクターを同期的に実行し、出力レコードを返す |
APIFY_GET_ACTOR | アクターのメタデータと入力スキーマを取得 |
APIFY_GET_DATASET_ITEMS | データセットからアイテムを取得 (ページネーション対応) |
APIFY_DATASET_GET | データセットのメタデータを取得 (アイテム数など) |
APIFY_DATASETS_GET | すべてのユーザーデータセットを一覧表示 |
APIFY_CREATE_TASK | 再利用可能なアクタータスクを作成 |
APIFY_GET_TASK_INPUT | タスクの保存された入力を確認 |
APIFY_GET_LIST_OF_RUNS | アクターの実行を一覧表示 |
APIFY_GET_LOG | 実行の実行ログを取得 |
Powered by Composio