CAPSOLVER
ブログ
CrewAI CAPTCHA Solver: エージェントツール コードガイド

CrewAI CAPTCHAソルバー: エージェントツールコードガイド

Logo of CapSolver

Sora Fujimoto

AI Solutions Architect

13-Jul-2026

TL;DR

  • CrewAIのCAPTCHAソルバー作業では、CapSolverのAIエージェントスタックを明示的な復元層として使用する必要があります。隠れたリトライロジックではなく、です。
  • capsolver-coreはPlaywrightスクリプトに適し、capsolver-agentはツールコールエージェントに適し、capsolver-mcpはMCP互換クライアントに適しています。
  • 安全なパターンは、検出、パラメータの読み取り、制限付きリトライで一度解決し、フォームに入力した後、リクエスト状態を記録してレビューすることです。
  • エージェントは、タスクの範囲が変更された場合、ページが制限アクセスを要求した場合、またはチャレンジ処理が進展しないまま繰り返された場合に停止する必要があります。

イントロダクション

CrewAIのCAPTCHAソルバー作業には、計画、ブラウザコントロール、レビューの間でコードレベルのツール境界が必要です。CapSolverはドキュメント化されたエージェント機能として接続されるべきです。ブラウザまたはモデルが検出する検証チャレンジ、承認されたツールが処理し、エージェントは元のユーザー認可タスクが有効である場合にのみ再開します。公式のCapSolver AIドキュメントでは、3つの実用的なレイヤーが説明されています。CapSolver for AI Agentsはアーキテクチャ、Core SDKブラウザモードはPlaywrightフロー、エージェントツールスキーマはモデル制御呼び出し、MCPサービスツールはモデルコンテキストプロトコルでツールを発見するクライアントです。この記事では、これらのドキュメントを生産的なCrewAI CAPTCHAソルバーのワークフローに変換し、コード、ストップルール、ロギングフィールドを含めます。

公式CapSolver AIパッケージの使用

CapSolver AIドキュメントでは3つのレイヤーが説明されています。所有モデルに合った最も低いレイヤーを使用してください。コードがブラウザを制御する場合はCore SDK、モデルがツール呼び出しのタイミングを決定する場合はエージェントツール、AIクライアントがツールを自動的に発見する場合はMCPサービスを使用してください。

bash Copy
pip install "capsolver-core[playwright] @ git+https://github.com/capsolver-ai/capsolver-core.git"
pip install git+https://github.com/capsolver-ai/capsolver-agent.git
pip install "capsolver-mcp[browser] @ git+https://github.com/capsolver-ai/capsolver-mcp.git"
playwright install chromium
export CAPSOLVER_API_KEY="your-capsolver-api-key"

イントロダクションとクイックスタートでは、パッケージの役割が説明されています。capsolver-coreはエンジンを公開し、capsolver-agentはツールとしてラップし、capsolver-mcpは同じ機能をMCPクライアントに公開します。APIキーは環境設定に保持し、プロンプト、ログ、スクリーンショット、記事の例に含めないでください。

CrewAIの役割設計

CrewAIの実装では、各役割に狭い責任を割り当てます。プランナーは、ページが検証チャレンジによってブロックされていることを識別します。ブラウザワーカーはナビゲーションを担当します。CapSolverツールハンドラーはチャレンジステップを担当します。レビュアーは、実行が不確実な場合の最終的な決定を担当します。

python Copy
crew_state = {
    "task_id": "lead-enrichment-042",
    "allowed_domains": ["example.com"],
    "captcha_attempts": 0,
    "max_captcha_attempts": 1,
    "final_state": "planning",
}

def may_call_capsolver(state, current_url):
    if state["captcha_attempts"] >= state["max_captcha_attempts"]:
        return False
    return any(domain in current_url for domain in state["allowed_domains"])

この小さなゲートは、CrewAI CAPTCHAソルバーの動作を可視化するものです。ページが範囲内にあり、リトライ予算がまだ利用可能な場合にのみ、助けを求めることができます。

モデル制御決定のエージェントツールパターン

モデルがチャレンジ処理が必要なタイミングを選択する場合、capsolver-agentを使用してください。エージェントツールガイドget_all_tools()を通じてツール定義を公開し、モデルのツール呼び出しをcreate_executor()でルーティングします。

python Copy
import json
from openai import OpenAI
from capsolver_agent.schema import create_executor, get_all_tools

client = OpenAI()
executor = create_executor(api_key="YOUR_CAPSOLVER_KEY", default_timeout=120)
tools = [tool.to_openai_function() for tool in get_all_tools()]

messages = [{
    "role": "user",
    "content": "承認されたブラウザタスクを続行してください。CAPTCHAが表示されたら、CapSolverツールを一度呼び出して結果を報告してください。"
}]

async def run_one_turn():
    response = client.chat.completions.create(
        model="gpt-4o",
        messages=messages,
        tools=tools,
    )

    for call in response.choices[0].message.tool_calls or []:
        args = json.loads(call.function.arguments)
        result = await executor.execute(call.function.name, args)
        messages.append({
            "role": "tool",
            "tool_call_id": call.id,
            "content": json.dumps(result),
        })

CrewAI CAPTCHAソルバーでは、このツールパスをレビューポリシーにバインドしてください。モデルはツールを要求できますが、あなたのアプリケーションが許可されたURL範囲、最大試行回数、および結果がタスクを継続するために使用できるかどうかを決定します。

ブラウザ制御エージェントのコアSDKパターン

CrewAI CAPTCHAソルバーのフローが既にPlaywrightページを所有している場合、capsolver-coreを使用してください。公式のコアSDKパスは、検出、CAPTCHA情報の読み取り、解決、ページへのトークンの入力です。ページ構造が動的である場合、ワンストップブラウザ呼び出しが役立ちます。

python Copy
import asyncio
from capsolver_core import create_capsolver
from playwright.async_api import async_playwright

TARGET_URL = "https://example.com/approved-workflow"

async def run_agent_step():
    async with async_playwright() as pw:
        browser = await pw.chromium.launch()
        page = await browser.new_page()
        await page.goto(TARGET_URL, wait_until="domcontentloaded")

        async with create_capsolver(api_key="YOUR_CAPSOLVER_KEY") as cap:
            captcha_types = await cap.detect(page)
            if not captcha_types:
                return "continue_without_challenge"

            results = await cap.solve_on_page(page)
            solved = [r for r in results if r.solution and not r.error]
            if not solved:
                return "stop_for_review"

        return "resume_original_authorized_task"

asyncio.run(run_agent_step())

重要なエンジニアリングの詳細は、戻り値であり、トークンではありません。元のタスクが法的に許可され、合理的でユーザー認可されている場合にのみエージェントは継続する必要があります。ページがプライベート、制限、機密、または認可されていないデータを要求した場合は停止する必要があります。

CapSolverのボーナスコードを引き換える

自動化予算を即座に増やす!
CapSolverアカウントにチャージする際にボーナスコード CAP26 を使用すると、毎回 5%のボーナス を獲得できます — 制限なし。
CapSolverダッシュボードで今すぐ引き換えてください。
ボーナスコード

エージェントループに属するガードレール

範囲チェック

どのチャレンジツールを呼び出す前に、ユーザーがタスクを認可したか、ターゲットが承認されたドメインリスト内か、アクセス中のデータが公開されているか、または他の方法で許可されているかを確認してください。CrewAI CAPTCHAソルバーのワークフローでは、技術的機能を許可として扱ってはなりません。

リトライ制限

小さなリトライ予算を使用してください。1回のブラウザ状態リトライと1回のクールダウンリトライで十分です。繰り返しのチャレンジイベントは、静かに継続する代わりにレビュー用チケットを作成する必要があります。

観測可能性

URL、タイムスタンプ、チャレンジタイプ、CapSolverパッケージのパス、試行回数、結果状態、最終的なページ状態をキャプチャしてください。ポリシーが明示的に許可している場合を除き、関係のないページコンテンツ、資格情報、セッションシークレット、個人データを保存しないでください。

CrewAI CAPTCHAソルバーでは、実行を法的にかつ証拠に基づいて保つようにしてください。HTTPステータスコードの動作アクセシビリティ要件プライバシーリスク管理、および公共データの管理を尊重してください。

結論

強力なCrewAI CAPTCHAソルバー記事は、実際の実装パスを示すべきであり、強力な生産ワークフローも同様です。実用的な選択は単純です。コード所有のブラウザ自動化にはcapsolver-coreを使用し、ツールコールエージェントにはcapsolver-agentを使用し、MCP互換クライアントにはcapsolver-mcpを使用してください。チャレンジ処理を制限し、ログに記録し、法的にユーザー認可された作業に関連付けてください。チームがエージェントワークフローにこの復元層を追加する準備ができたら、CapSolverと公式のAIエージェントドキュメントから始めましょう。

FAQ

AIエージェントが最初に使用すべきCapSolverパッケージはどれですか?

アプリケーションがブラウザコードを所有している場合はcapsolver-coreを使用し、モデルがツールを呼び出す必要がある場合はcapsolver-agentを使用し、AIクライアントがMCPを通じてツールを発見する必要がある場合はcapsolver-mcpを使用してください。

モデルがすべてのCAPTCHAリトライを決定すべきですか?

いいえ。モデルはツール呼び出しを要求できますが、アプリケーションが範囲、リトライ制限、および停止条件を強制する必要があります。

このワークフローはプライベートまたは制限データで使用できますか?

いいえ。CAPTCHA処理は許可を提供しません。サイトの利用規約とデータ権を尊重し、法的に妥当でユーザー認可されたワークフローでのみ使用してください。

レビューのためにログに記録すべきものは何ですか?

ソースURL、チャレンジタイプ、ツールパス、試行回数、結果状態、最終的なページ状態をログに記録してください。資格情報や関係のないページコンテンツはログに含めないでください。

コンプライアンス免責事項: このブログで提供される情報は、情報提供のみを目的としています。CapSolverは、すべての適用される法律および規制の遵守に努めています。CapSolverネットワークの不法、詐欺、または悪用の目的での使用は厳格に禁止され、調査されます。私たちのキャプチャ解決ソリューションは、公共データのクローリング中にキャプチャの問題を解決する際に100%のコンプライアンスを確保しながら、ユーザーエクスペリエンスを向上させます。私たちは、サービスの責任ある使用を奨励します。詳細については、サービス利用規約およびプライバシーポリシーをご覧ください。

もっと見る

TinyFish AgentQでキャプチャを解く
TinyFish AgentQLを使ってCAPTCHAを解決する方法 – CapSolverを使用したステップバイステップガイド

CapSolverをTinyFish AgentQLに統合する方法を学び、reCAPTCHAやCloudflare TurnstileなどのCAPTCHAを自動的に解決する方法を学びましょう。PythonとJavaScript SDKの例を含むステップバイステップのチュートリアルで、シームレスなAI駆動のウェブ自動化を実現します。

ai
Logo of CapSolver

Sora Fujimoto

05-Aug-2026

ラマインデックスのエージェントでキャプチャをどうやって解決するか
LlamaIndexエージェントにおけるCAPTCHAの解決方法

CAPTCHAの解決をLlamaIndexエージェントにFunctionToolとCapSolverを使用してウェブデータのインジェストパイプラインに統合する。

ai
Logo of CapSolver

Sora Fujimoto

31-Jul-2026

CAPTCHAをMCP CapSolverサービスで解決する方法
MCPを使用したCAPTCHAの解き方: キャプソルバー モデル コンテキスト プロトコル サービス

Claude Desktop、Cursor、および任意のMCPクライアントでゼロコードでCAPTCHAを解くためのCapSolver MCPサービスを設定してください。

ai
Logo of CapSolver

Sora Fujimoto

31-Jul-2026

OpenAI Agents SDKにおけるreCAPTCHA v3の解き方
reCAPTCHA v3をOpenAIエージェントSDKで解く方法

OpenAI Agents SDKで、CapSolverのfunction_toolを使用して、高スコアのreCAPTCHA v3トークンを生成します。

ai
Logo of CapSolver

Sora Fujimoto

30-Jul-2026

クラウドフレアトゥルニスティールを解決する方法 クリューAIエージェントで
Cloudflare Turnstile の解決方法: CrewAI エージェントでの

CrewAIのマルチエージェントワークフローにCloudflare Turnstileの解決を統合し、CapSolverを用いて行います。

ai
Logo of CapSolver

Sora Fujimoto

30-Jul-2026

CAPTCHAを解く方法: AutoGen AIエージェントでCapSolverを使う
CAPTCHAを解決する方法: AutoGenエージェント

Microsoft AutoGenのマルチエージェント会話にCAPTCHAの解決を統合する完全なガイド – register_functionとグループチャットのパターンを使用してCapSolverで

ai
Logo of CapSolver

Sora Fujimoto

29-Jul-2026