CAPSOLVER
ブログ
AgnoでのCaptchaの解決方法とCapSolver統合

アグノでキャプソルバー統合を使用してCaptchaを解く方法

Logo of CapSolver

Sora Fujimoto

AI Solutions Architect

13-Jan-2026

AgnoとCapSolverの統合

AI駆動型のオートメーションが現実的なワークフローでますます実用的になるにつれ、Agnoはプライバシーを最優先にした自律型マルチエージェントシステムを構築するための高速なフレームワークとして登場しました。これらのエージェントがウェブサイトをスクリーニング、データ収集、または自動ブラウジングを通じて相互作用するとき、CAPTCHAはしばしば問題になります。

CapSolverは、エージェントがオートメーションのフローを妨げることなくCAPTCHA保護ページを信頼性よく処理できるようにすることで、この問題を解決します。AgnoとCapSolverは、本番環境で動作するスケーラブルなオートメーションを構築しやすくします。


Agnoとは何か?

Agnoは、自前のインフラストラクチャ内で完全に動作するAIシステムを構築するためのオープンソースのマルチエージェントフレームワークおよびランタイムです。パフォーマンスとプライバシーを重視して設計されており、外部のコントロールプレーンは必要なく、データは環境外に漏れません。

Agnoの主な特徴

  • 高パフォーマンス: 他のエージェントフレームワークよりもはるかに高速でメモリ効率が良い
  • プライバシー重視: 完全に自前でホストし、データと実行の完全な制御が可能
  • マルチエージェントシステム: エージェントはタスクの協力、専門化、調整が可能
  • モデルの柔軟性: OpenAI、Anthropic、Google、そして多くの他のプロバイダーをサポート
  • 本番環境対応のランタイム: FastAPIベースのランタイムを含む
  • 豊富なツール: ウェブオートメーション、API、データベースなどに組み込みのツール
  • 永続的なメモリ: セッション間でコンテキストを保持可能
    mory across sessions with agentic RAG and 20+ vector stores

コアアーキテクチャ

コンポーネント 説明
エージェント 記憶、ツール、モデル統合を持つ自律型AIユニット
チーム 複雑なタスクに協力するエージェントのグループ
ワークフロー 予測可能な実行を目的とした構造化されたパイプライン
AgentOS 本番環境デプロイ用のFastAPIベースのランタイム

CapSolverとは何か?

CapSolverは、さまざまなCAPTCHAチャレンジを回避するAI駆動型ソリューションを提供するリーディングなCAPTCHA解決サービスです。複数のCAPTCHAタイプをサポートし、高速な応答時間を提供し、オートメーティックなワークフローにシームレスに統合できます。

サポートされているCAPTCHAタイプ


AgnoとCapSolverを統合する理由

ウェブサイトと相互作用するAgnoエージェントを構築する際、データ収集、自動テスト、コンテンツ集約など、CAPTCHAチャレンジは大きな障害になります。自動ブラウザ環境でのCAPTCHAの解決について詳しく知りたい場合は、PuppeteerでCAPTCHAを解決する方法のガイドをご覧ください。では、統合がなぜ重要なのかを以下に示します。

  1. エージェントワークフローの途切れを防ぐ: エージェントは手動介入なしでタスクを完了できます。ウェブスクリーピングにおけるCAPTCHAの解決についての他の解決策については、ウェブスクリーピング時のCAPTCHA解決の最適な方法の記事を参照してください。
  2. プライバシーの保護: AgnoとCapSolverは、データの制御を保持するための手段を提供します
  3. スケーラブルなオートメーション: 並行して動作するエージェント操作で複数のCAPTCHAチャレンジを処理可能
  4. コスト効率が良い: 成功したCAPTCHAの解決のみに料金が発生
  5. 高い解決率: サポートされているすべてのCAPTCHAタイプで業界をリードする精度

インストール

まず、必要なパッケージをインストールします:

bash Copy
pip install agno
pip install requests

Agnoはモデルに依存しないで、23以上のLLMプロバイダーを内蔵してサポートしています:

python Copy
# OpenAI
from agno.models.openai import OpenAIChat

# Anthropic Claude
from agno.models.anthropic import Claude

# Google Gemini
from agno.models.google import Gemini

# その他多くのプロバイダー...

Agno用のカスタムCapSolverツールの作成

Agnoは、エージェントがタスクを遂行するために使用できるカスタムツールを作成できるようにしています。CAPTCHAチャレンジを処理するためのCapSolverツールの作成方法を以下に示します。

基本的なCapSolverツールの実装

python Copy
import requests
import time
from agno.tools import tool

CAPSOLVER_API_KEY = "YOUR_CAPSOLVER_API_KEY"


@tool
def solve_captcha(
    website_url: str,
    website_key: str,
    captcha_type: str = "ReCaptchaV2TaskProxyLess"
) -> str:
    """
    CapSolver APIを使用してCAPTCHAチャレンジを解決します。

    引数:
        website_url: CAPTCHAが設置されているウェブサイトのURL
        website_key: CAPTCHAのサイトキー
        captcha_type: CAPTCHAのタイプ(ReCaptchaV2TaskProxyLess、ReCaptchaV3TaskProxyLess、AntiTurnstileTaskProxyLess)

    戻り値:
        CAPTCHAの解決トークン
    """
    # タスクの作成
    payload = {
        "clientKey": CAPSOLVER_API_KEY,
        "task": {
            "type": captcha_type,
            "websiteURL": website_url,
            "websiteKey": website_key
        }
    }

    response = requests.post("https://api.capsolver.com/createTask", json=payload)
    result = response.json()

    if result.get("errorId") != 0:
        return f"タスク作成エラー: {result.get('errorDescription')}"

    task_id = result.get("taskId")

    # 結果をポーリング
    for _ in range(60):
        time.sleep(2)

        result = requests.post(
            "https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            solution = result.get("solution", {})
            return solution.get("gRecaptchaResponse") or solution.get("token")
        elif result.get("status") == "failed":
            return f"タスク失敗: {result.get('errorDescription')}"

    return "CAPTCHA解決を待つタイムアウト"

異なるCAPTCHAタイプの解決

reCAPTCHA v2の解決

python Copy
import requests
import time
from agno.tools import tool

CAPSOLVER_API_KEY = "YOUR_CAPSOLVER_API_KEY"


@tool
def solve_recaptcha_v2(website_url: str, website_key: str) -> str:
    """
    CapSolverを使用してreCAPTCHA v2のチャレンジを解決します。

    引数:
        website_url: reCAPTCHA v2が設置されているウェブサイトのURL
        website_key: reCAPTCHAのサイトキー(data-sitekey属性)

    戻り値:
        g-recaptcha-responseトークン
    """
    payload = {
        "clientKey": CAPSOLVER_API_KEY,
        "task": {
            "type": "ReCaptchaV2TaskProxyLess",
            "websiteURL": website_url,
            "websiteKey": website_key
        }
    }

    # タスクの作成
    response = requests.post("https://api.capsolver.com/createTask", json=payload)
    result = response.json()

    if result.get("errorId") != 0:
        return f"エラー: {result.get('errorDescription')}"

    task_id = result.get("taskId")

    # 結果をポーリング
    for attempt in range(60):
        time.sleep(2)
        result = requests.post(
            "https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["gRecaptchaResponse"]
        if result.get("status") == "failed":
            return f"失敗: {result.get('errorDescription')}"

    return "解決を待つタイムアウト"

reCAPTCHA v3の解決

python Copy
import requests
import time
from agno.tools import tool

CAPSOLVER_API_KEY = "YOUR_CAPSOLVER_API_KEY"


@tool
def solve_recaptcha_v3(
    website_url: str,
    website_key: str,
    page_action: str = "submit",
    min_score: float = 0.7
) -> str:
    """
    CapSolverを使用してreCAPTCHA v3のチャレンジをスコアベースの検証で解決します。

    引数:
        website_url: reCAPTCHA v3が設置されているウェブサイトのURL
        website_key: reCAPTCHAのサイトキー
        page_action: reCAPTCHA v3のアクションパラメータ
        min_score: 必要スコア(0.1から0.9)

    戻り値:
        g-recaptcha-responseトークン
    """
    payload = {
        "clientKey": CAPSOLVER_API_KEY,
        "task": {
            "type": "ReCaptchaV3TaskProxyLess",
            "websiteURL": website_url,
            "websiteKey": website_key,
            "pageAction": page_action,
            "minScore": min_score
        }
    }

    # タスクの作成
    response = requests.post("https://api.capsolver.com/createTask", json=payload)
    result = response.json()

    if result.get("errorId") != 0:
        return f"エラー: {result.get('errorDescription')}"

    task_id = result.get("taskId")

    # 結果をポーリング
    for attempt in range(60):
        time.sleep(2)
        result = requests.post(
            "https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["gRecaptchaResponse"]
        if result.get("status") == "failed":
            return f"失敗: {result.get('errorDescription')}"

    return "解決を待つタイムアウト"

Cloudflare Turnstileの解決

python Copy
import requests
import time
from agno.tools import tool

CAPSOLVER_API_KEY = "YOUR_CAPSOLVER_API_KEY"


@tool
def solve_turnstile(website_url: str, website_key: str) -> str:
    """
    Cloudflare Turnstileのチャレンジを解決します。

    引数:
        website_url: Turnstileが設置されているウェブサイトのURL
        website_key: Turnstileウィジェットのサイトキー

    戻り値:
        Turnstileトークン
    """
    payload = {
        "clientKey": CAPSOLVER_API_KEY,
        "task": {
            "type": "AntiTurnstileTaskProxyLess",
            "websiteURL": website_url,
            "websiteKey": website_key
        }
    }

    # タスクの作成
    response = requests.post("https://api.capsolver.com/createTask", json=payload)
    result = response.json()

    if result.get("errorId") != 0:
        return f"エラー: {result.get('errorDescription')}"

    task_id = result.get("taskId")

    # 結果をポーリング
    for attempt in range(60):
        time.sleep(2)
        result = requests.post(
            "https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["token"]
        if result.get("status") == "failed":
            return f"失敗: {result.get('errorDescription')}"

    return "解決を待つタイムアウト"

Cloudflare Challenge(5秒)の解決

python Copy
import requests
import time
from agno.tools import tool

CAPSOLVER_API_KEY = "YOUR_CAPSOLVER_API_KEY"


@tool
def solve_cloudflare_challenge(website_url: str, proxy: str) -> dict:
    """
    Cloudflareの5秒チャレンジページを解決します。

    引数:
        website_url: 保護されたページのURL
        proxy: プロキシの形式: http://user:pass@ip:port

    戻り値:
        保護されたページにアクセスするためのクッキーとuser_agentの辞書
    """
    payload = {
        "clientKey": CAPSOLVER_API_KEY,
        "task": {
            "type": "AntiCloudflareTask",
            "websiteURL": website_url,
            "proxy": proxy
        }
    }

    # タスクの作成
    response = requests.post("https://api.capsolver.com/createTask", json=payload)
    result = response.json()

    if result.get("errorId") != 0:
        return {"error": result.get('errorDescription')}

    task_id = result.get("taskId")

    # 結果をポーリング
    for attempt in range(60):
        time.sleep(3)
        result = requests.post(
            "https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            return {
                "cookies": result["solution"]["cookies"],
                "user_agent": result["solution"]["userAgent"]
            }
        if result.get("status") == "failed":
            return {"error": result.get('errorDescription')}

    return {"error": "解決を待つタイムアウト"}

完全なAgnoエージェントの例

以下は、CAPTCHAチャレンジを処理するためにCapSolverを使用するAgnoエージェントの完全な例です:

python Copy
import os
import requests
import time
from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools import tool

# 設定
CAPSOLVER_API_KEY = "YOUR_CAPSOLVER_API_KEY"
os.environ["OPENAI_API_KEY"] = "YOUR_OPENAI_API_KEY"


@tool
def solve_recaptcha_v2(website_url: str, website_key: str) -> str:
    """
    CapSolverを使用してreCAPTCHA v2のチャレンジを解決します。

    引数:
        website_url: reCAPTCHA v2が設置されているウェブサイトのURL
        website_key: reCAPTCHAのサイトキー(data-sitekey属性)

    戻り値:
        g-recaptcha-responseトークンまたはエラーメッセージ
    """
    payload = {
        "clientKey": CAPSOLVER_API_KEY,
        "task": {
            "type": "ReCaptchaV2TaskProxyLess",
            "websiteURL": website_url,
            "websiteKey": website_key
        }
    }

    response = requests.post("https://api.capsolver.com/createTask", json=payload)
    result = response.json()

    if result.get("errorId") != 0:
        return f"エラー: {result.get('errorDescription')}"

    task_id = result.get("taskId")

    for _ in range(60):
        time.sleep(2)
        result = requests.post(
            "https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["gRecaptchaResponse"]
        if result.get("status") == "failed":
            return f"失敗: {result.get('errorDescription')}"

    return "タイムアウト"


@tool
def solve_turnstile(website_url: str, website_key: str) -> str:
    """
    Cloudflare Turnstileのチャレンジを解決します。

    引数:
        website_url: Turnstileが設置されているウェブサイトのURL
        website_key: Turnstileウィジェットのサイトキー

    戻り値:
        Turnstileトークンまたはエラーメッセージ
    """
    payload = {
        "clientKey": CAPSOLVER_API_KEY,
        "task": {
            "type": "AntiTurnstileTaskProxyLess",
            "websiteURL": website_url,
            "websiteKey": website_key
        }
    }

    response = requests.post("https://api.capsolver.com/createTask", json=payload)
    result = response.json()

    if result.get("errorId") != 0:
        return f"エラー: {result.get('errorDescription')}"

    task_id = result.get("taskId")

    for _ in range(60):
        time.sleep(2)
        result = requests.post(
            "https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["token"]
        if result.get("status") == "failed":
            return f"失敗: {result.get('errorDescription')}"

    return "タイムアウト"
"https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["token"]
        if result.get("status") == "failed":
            return f"失敗: {result.get('errorDescription')}"

    return "タイムアウト"


@tool
def check_capsolver_balance() -> str:
    """
    現在のCapSolverアカウントの残高を確認します。

    戻り値:
        現在の残高情報
    """
    response = requests.post(
        "https://api.capsolver.com/getBalance",
        json={"clientKey": CAPSOLVER_API_KEY}
    )
    result = response.json()

    if result.get("errorId") != 0:
        return f"エラー: {result.get('errorDescription')}"

    return f"残高: ${result.get('balance', 0):.4f}"


# Webスクリーパーエージェントの作成
web_scraper_agent = Agent(
    name="Webスクリーパーエージェント",
    model=OpenAIChat(id="gpt-4o"),
    tools=[solve_recaptcha_v2, solve_turnstile, check_capsolver_balance],
    description="自動でCAPTCHAチャレンジを処理するエキスパートなWebスクリーパー",
    instructions=[
        "CAPTCHAを処理できる専門のWebスクリーパーです。",
        "CAPTCHAを検出したら、タイプを識別し適切なソルバーを使用してください。",
        "reCAPTCHA v2の場合、URLとサイトキーを使用してsolve_recaptcha_v2を呼び出してください。",
        "Turnstileの場合、URLとサイトキーを使用してsolve_turnstileを呼び出してください。",
        "大規模なスクリーピングジョブを開始する前に常に残高を確認してください。"
    ],
    markdown=True
)


def main():
    print("=" * 60)
    print("Agno + CapSolver統合デモ")
    print("=" * 60)

    # タスク: reCAPTCHAチャレンジを解決
    task = """
    私はreCAPTCHA v2チャレンジを解決する必要があります。

    ウェブサイトURL: https://www.google.com/recaptcha/api2/demo
    サイトキー: 6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-

    これをCAPTCHAを解決し、トークンの最初の50文字を報告してください。
    また、スクリーピングを開始する前に私のCapSolver残高を確認してください。
    """

    response = web_scraper_agent.run(task)
    print("\nエージェントの応答:")
    print(response.content)


if __name__ == "__main__":
    main()

AgnoチームとCapSolverの使用方法

Agnoはマルチエージェントチームをサポートしています。以下は、専門的なCAPTCHAソルバーを持つチームの作成方法です:

python Copy
from agno.agent import Agent
from agno.team import Team
from agno.models.openai import OpenAIChat
from agno.tools import tool
import requests
import time

CAPSOLVER_API_KEY = "YOUR_CAPSOLVER_API_KEY"


@tool
def solve_any_captcha(
    website_url: str,
    website_key: str,
    captcha_type: str = "ReCaptchaV2TaskProxyLess"
) -> str:
    """複数のタイプのCAPTCHAをサポートするユニバーサルCAPTCHAソルバー。"""
    payload = {
        "clientKey": CAPSOLVER_API_KEY,
        "task": {
            "type": captcha_type,
            "websiteURL": website_url,
            "websiteKey": website_key
        }
    }

    response = requests.post("https://api.capsolver.com/createTask", json=payload)
    result = response.json()

    if result.get("errorId") != 0:
        return f"エラー: {result.get('errorDescription')}"

    task_id = result.get("taskId")

    for _ in range(60):
        time.sleep(2)
        result = requests.post(
            "https://api.capsolver.com/getTaskResult",
            json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
        ).json()

        if result.get("status") == "ready":
            solution = result.get("solution", {})
            return solution.get("gRecaptchaResponse") or solution.get("token")
        if result.get("status") == "failed":
            return f"失敗: {result.get('errorDescription')}"

    return "タイムアウト"


# CAPTCHA専門エージェント
captcha_agent = Agent(
    name="CAPTCHA専門家",
    model=OpenAIChat(id="gpt-4o"),
    tools=[solve_any_captcha],
    description="さまざまなCAPTCHAタイプを識別し解決するエキスパート",
    instructions=[
        "ページ分析からCAPTCHAタイプを識別する",
        "正しいパラメータで適切なソルバーを使用する",
        "成功または失敗を明確に報告する"
    ]
)

# データ抽出エージェント
data_agent = Agent(
    name="データ抽出者",
    model=OpenAIChat(id="gpt-4o"),
    description="ウェブページからのデータを抽出・処理する",
    instructions=[
        "HTMLコンテンツからの構造化データを抽出する",
        "必要に応じてCAPTCHAの解決をリクエストする",
        "抽出されたデータを検証およびクリーンアップする"
    ]
)

# チームの作成
scraping_team = Team(
    name="ウェブスクリーピングチーム",
    agents=[captcha_agent, data_agent],
    description="CAPTCHA処理を専門とするチーム"
)

CAPTCHAトークンの提出方法

各CAPTCHAタイプには異なる提出方法があります:

reCAPTCHA v2/v3 - トークンの挿入

python Copy
from selenium import webdriver
from selenium.webdriver.common.by import By

def submit_recaptcha_token(driver, token: str):
    """reCAPTCHAトークンを挿入して送信"""
    recaptcha_response = driver.find_element(By.ID, "g-recaptcha-response")
    driver.execute_script("arguments[0].style.display = 'block';", recaptcha_response)
    recaptcha_response.clear()
    recaptcha_response.send_keys(token)

    form = driver.find_element(By.TAG_NAME, "form")
    form.submit()

Turnstile - トークンの挿入

python Copy
def submit_turnstile_token(driver, token: str):
    """Turnstileトークンを挿入して送信"""
    turnstile_input = driver.find_element(By.NAME, "cf-turnstile-response")
    driver.execute_script("arguments[0].value = arguments[1];", turnstile_input, token)

    form = driver.find_element(By.TAG_NAME, "form")
    form.submit()

Cloudflareチャレンジ - クッキーの使用

python Copy
import requests

def access_cloudflare_protected_page(url: str, cf_solution: dict):
    """Cloudflareチャレンジの解決結果を使用して保護されたページにアクセスします。"""
    session = requests.Session()

    for cookie in cf_solution["cookies"]:
        session.cookies.set(cookie["name"], cookie["value"])

    headers = {"User-Agent": cf_solution["user_agent"]}

    response = session.get(url, headers=headers)
    return response.text

最適な実践方法

1. エラー処理とリトライ

python Copy
from agno.tools import tool
import time

@tool
def solve_with_retry(
    website_url: str,
    website_key: str,
    max_retries: int = 3
) -> str:
    """エラー時に自動リトライするCAPTCHAソルバー。"""
    for attempt in range(max_retries):
        try:
            result = solve_recaptcha_v2(website_url, website_key)
            if not result.startswith("エラー") and not result.startswith("失敗"):
                return result
        except Exception as e:
            if attempt == max_retries - 1:
                return f"すべてのリトライに失敗しました: {str(e)}"
        time.sleep(2 ** attempt)  # 指数バックオフ

    return "最大リトライ回数に達しました"

2. 残高管理

python Copy
@tool
def check_balance() -> float:
    """CapSolverアカウントの残高を確認します。"""
    response = requests.post(
        "https://api.capsolver.com/getBalance",
        json={"clientKey": CAPSOLVER_API_KEY}
    )
    return response.json().get("balance", 0)

3. 非同期サポート

Agnoはパフォーマンス向上のための非同期操作をサポートしています:

python Copy
import asyncio
import aiohttp
from agno.tools import tool

@tool
async def solve_captcha_async(website_url: str, website_key: str) -> str:
    """非同期CAPTCHAソルバーでより高い並列性を実現します。"""
    async with aiohttp.ClientSession() as session:
        payload = {
            "clientKey": CAPSOLVER_API_KEY,
            "task": {
                "type": "ReCaptchaV2TaskProxyLess",
                "websiteURL": website_url,
                "websiteKey": website_key
            }
        }

        async with session.post(
            "https://api.capsolver.com/createTask",
            json=payload
        ) as response:
            result = await response.json()

        if result.get("errorId") != 0:
            return f"エラー: {result.get('errorDescription')}"

        task_id = result.get("taskId")

        for _ in range(60):
            await asyncio.sleep(2)

            async with session.post(
                "https://api.capsolver.com/getTaskResult",
                json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
            ) as response:
                result = await response.json()

            if result.get("status") == "ready":
                solution = result.get("solution", {})
                return solution.get("gRecaptchaResponse") or solution.get("token")
            if result.get("status") == "failed":
                return f"失敗: {result.get('errorDescription')}"

        return "タイムアウト"

結論

CapSolverをAgnoと統合することで、ウェブベースのタスクに最適な自律型AIエージェントの潜在能力を引き出せます。Agnoの高速でプライバシーを重視したマルチエージェントのオーケストレーションと、CapSolverの業界をリードするCAPTCHAソルビングの能力を組み合わせることで、開発者は最も難しいウェブ保護メカニズムを扱う堅牢な自動化ソリューションを構築できます。

データ抽出パイプライン、自動テストフレームワーク、または知能ウェブエージェントを構築する場合、Agno + CapSolverの組み合わせは、生産環境に必要な速度、信頼性、スケーラビリティを提供します。


さっそく始めましょうか? CapSolverに登録 そして、ボーナスコード AGNO を使って最初の充電で6%のボーナスを獲得してください!


FAQ

Agnoとは何ですか?

Agnoは、AI製品を構築するためのマルチエージェントフレームワーク、ランタイム、コントロールプレーンです。LangGraphの529倍の高速さで、メモリ使用量は24分の1で、最大のプライバシーを確保するためにあなたのインフラで動作します。

CapSolverはAgnoとどのように統合されますか?

CapSolverは@toolでデコレートされたカスタムツールを通じてAgnoと統合されます。CapSolver APIをラップする関数を作成し、AIエージェントがウェブ操作中にCAPTCHAチャレンジに遭遇したときに自動的に解決できるようにします。

CapSolverはどのタイプのCAPTCHAを解決できますか?

CapSolverはreCAPTCHA v2、reCAPTCHA v3、Cloudflare Turnstile、Cloudflareチャレンジ、AWS WAF、GeeTestなど、幅広いCAPTCHAタイプをサポートしています。

CapSolverの料金はどのくらいですか?

CapSolverは、解決するCAPTCHAのタイプとボリュームに基づいて競争力のある料金を提供しています。現在の料金詳細については capsolver.com を参照してください。初回充電でコード AGNO を使用すると、5%のボーナスが得られます。

Agnoは他のLLMプロバイダーと使用できますか?

はい!Agnoはモデルに依存せず、OpenAI、Anthropic Claude、Google Gemini、Groqなど50以上のモデルプロバイダーをサポートしています。

Agnoは無料で使用できますか?

はい、AgnoはMITライセンスでオープンソースとしてリリースされており、無料で使用できます。ただし、LLM APIコールやCapSolverなどのCAPTCHAソルビングサービスのコストが発生する可能性があります。

CAPTCHAサイトキーを見つける方法は?

サイトキーは通常、ページのHTMLソースにあります。以下を検索してください:

  • reCAPTCHA: data-sitekey属性またはgrecaptcha.render()コール
  • Turnstile: Turnstileウィジェット内のdata-sitekey属性

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

もっと見る

Pythonでウェブサイトをクローリングする際の403 Forbiddenエラーの解決方法
Pythonでウェブサイトをクロールする際の403エラーの解決方法

Pythonでウェブサイトをクロールする際の403 Forbiddenエラーを乗り越える方法を学びましょう。このガイドでは、IPローテーション、User-Agentのスプーフィング、リクエストのスローティング、認証処理、アクセス制限を回避し、ウェブスキャッピングを成功裏に継続するためのヘッドレスブラウザの使用についてカバーしています。

web scraping
Logo of CapSolver

Sora Fujimoto

13-Jan-2026

アグノとカプソルバーの統合
アグノでキャプソルバー統合を使用してCaptchaを解く方法

自律型AIエージェントでreCAPTCHA v2/v3、Cloudflare Turnstile、WAFのチャレンジを解決する方法を学びましょう。ウェブスクラビングと自動化のための実際のPythonコード例を含みます。

web scraping
Logo of CapSolver

Sora Fujimoto

13-Jan-2026

トップ Python ウェブスクレイピング ライブラリ 2026年
トップ Python ウェブスクラピング ライブラリ 2026年

2026年の最高のPythonウェブスクレイピングライブラリを探索し、特徴、使いやすさ、パフォーマンスを比較して、データ抽出のニーズに応じた情報を提供します。エキスパートの洞察とよくある質問も含まれます。

web scraping
Logo of CapSolver

Adélia Cruz

12-Jan-2026

Crawlabを使用してCapSolverでCaptchaを解く方法
CrawlabとCapSolverの統合: 分散クローリングのための自動CAPTCHA解決

CapSolverをCrawlabに統合して、大規模にreCAPTCHAとCloudflare Turnstileを解決する方法を学びます

web scraping
Logo of CapSolver

Sora Fujimoto

09-Jan-2026

2026年に知っておくべき最高のAIスクラビングツール
2026年に知っておくべき最適なAIスクラッピングツール

2026年の最高のAIスクラピングツールのオプションをチェックしてください。私たちが比較する最高のAIウェブスクラピングツールには、Bright Data、Crawl4AI、Browse AIが含まれており、具体的な価格を提供して、自動データ抽出とセキュリティチャレンジの解決をマスターするお手伝いをします。

web scraping
Logo of CapSolver

Lucas Mitchell

07-Jan-2026

6つのウェブアンブロッカーの比較
2026年のベストオプション: 6つのベストなウェブアンブロッカー比較

2026年の6つの最高のウェブアンブロッカーを比較する。ボット対策システムを回避し、住宅プロキシや自動スクリーピングツールを使用するための最高評価のウェブアンブロッカーAPIを発見する。Decodo、Oxylabs、Bright Dataなど。

web scraping
Logo of CapSolver

Sora Fujimoto

07-Jan-2026