🎉全新面向 AI Agent 的 CapSolver
Selenium CAPTCHA solver landing page hero section with code snippet and CTA buttons
Selenium CAPTCHA solver landing page hero section with code snippet and CTA buttons

代理自动化 · OpenAI Agents SDK

在 OpenAI Agents SDK 应用程序中解决验证码问题

添加 CapSolver 作为支持浏览器的代理的功能工具。当出现受支持的验证码时,代理可以调用​​ CapSolver、接收结果并继续授权的工作流程。还可以通过 Agents SDK 跟踪来查看工具调用。

OpenAI Agents SDK · agent runner

agent → browser.navigate("signup")
agent → form.fill(profile)
CAPTCHA detected
tool_call: solve_recaptcha()span: tools.solve_recaptcha · sitekey + page_url
token returned → agent.resume()
final_output: signup complete
CapSolver function tool

Solving captcha…

验证码解决的工作原理

当出现受支持的 CAPTCHA 时,代理会调用 CapSolver 并接收继续所需的结果。

01

出现验证码

挑战出现

02

收集

页面 URL、站点密钥和验证码类型

03

解决

向 CapSolver 发送请求

04

返回

结果发送回代理

05

继续

代理恢复工作流程

整合

CapSolver 如何融入 OpenAI 代理工作流程

OpenAI Agents SDK 管理代理循环和功能工具调用。单独的浏览器工具处理网站交互,而 CapSolver 处理支持的验证码请求并将结果返回给代理。

组件

主要角色

当验证码出现时

OpenAI代理

规划任务、选择工具并管理状态。

决定何时调用 CapSolver 函数工具。

浏览器工具

导航、单击、键入和阅读页面。

提供页面上下文并继续浏览器操作。

帽解算器

处理支持验证码请求。

将验证码结果返回给代理。

代理SDK跟踪

记录代理运行和工具调用。

帮助检查工具活动和错误。

验证码覆盖率

CapSolver 支持 OpenAI 代理哪些验证码类型?

当前的覆盖范围包括 reCAPTCHA v2 和 v3(包括 Enterprise 变体)和 Cloudflare Turnstile。

验证码 v2

标准、隐形和企业 reCAPTCHA v2 挑战。

验证码 v3

基于分数的企业 reCAPTCHA v3 挑战以及行动支持。

Cloudflare 十字转门

托管、非交互式且不可见的 Turnstile 小部件。

更多验证码类型

探索通过 CapSolver API 可用的其他验证码任务类型。

快速入门

将 CapSolver 作为功能工具添加到 OpenAI 代理中

将 CapSolver 包裹起来@function_tool,将其添加到代理的工具中,并让 Agents SDK 管理工具调用循环。

openai_agent.py
# pip install capsolver-agent openai-agents
# export CAPSOLVER_API_KEY=CAP-XXXXXX
# export OPENAI_API_KEY=sk-XXXXXX

import json
import os
from agents import Agent, Runner, function_tool, set_default_openai_api, set_tracing_disabled
from capsolver_agent.schema import create_executor
from _env import load_example_env  # demo only: reads repo-root .env

load_example_env()
set_tracing_disabled(True)
if os.environ.get("OPENAI_BASE_URL"):  # OpenAI-compatible gateway (DeepSeek, ...)
    set_default_openai_api("chat_completions")

executor = create_executor()  # wraps a capsolver-core engine; key from CAPSOLVER_API_KEY

@function_tool
async def solve_captcha(
    captcha_type: str,
    website_url: str,
    website_key: str,
    proxy: str | None = None,   # pass a proxy for proxy-bound challenges
) -> str:
    """Solve a captcha (reCaptchaV2 / reCaptchaV3 / cloudflare) and return the result as JSON.

    Call this whenever a page blocks the task with a CAPTCHA. Provide the
    captcha type, the page URL, and the site key from the challenge widget.
    """
    args = {"captcha_type": captcha_type, "website_url": website_url, "website_key": website_key}
    if proxy:
        args["proxy"] = proxy
    result = await executor.execute("solve_captcha", args)
    return json.dumps(result, ensure_ascii=False)

agent = Agent(
    name="captcha-agent",
    model=os.environ.get("OPENAI_MODEL", "gpt-4o"),
    instructions=(
        "You complete web tasks. When a page shows a CAPTCHA, call solve_captcha "
        "with the captcha type, page URL and site key, then continue."
    ),
    tools=[solve_captcha],
)

result = Runner.run_sync(
    agent,
    "Solve the reCaptchaV2 at https://www.google.com/recaptcha/api2/demo with site key "
    "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ- and report the first 40 characters of the token.",
)
print(result.final_output)
本例使用token模式。请参阅文档用于浏览器工具、验证码参数和代理配置。

生产最佳实践

生产 OpenAI 代理的最佳实践

确保 API 密钥安全,传递准确的验证码详细信息,并跟踪每个请求。

面积

推荐

为什么这很重要

API密钥安全

将 CAPSOLVER_API_KEY 存储在环境变量或秘密管理器中。

防止提示、日志和存储库中的意外密钥泄露。

工具输入

对验证码类型、页面 URL 和站点密钥使用清晰的输入。

帮助客服人员使用正确的信息调用该工具。

验证码详细信息

从您的应用程序或浏览器工具传递经过验证的验证码详细信息。

防止模型猜测页面参数。

超时和重试

使用具有整体超时的固定间隔轮询。单独重试 HTTP 错误。

避免长时间等待和不必要的重复请求。

记录和追踪

使用 Agents SDK 跟踪工具调用,并记录任务 ID、状态和错误。

使调试和支持变得更加容易。

故障处理

返回明确的错误并在重复失败后暂停工作流程。

防止盲目重试和意外的代理循环。

最适合的用例

专为在生产中运行 OpenAI 代理的 B2B 团队而构建

销售自动化

使用公共或用户提供的业务数据支持批准的研究和 CRM 工作流程。

人力资源技术

支持跨批准的职位和候选人系统的授权招聘工作流程。

质量保证和测试工具

测试遇到支持的验证码的注册、结账和表单工作流程。

监管科技与合规

公共登记检查和证据收集工作流程需要可靠性和审计日志。

研究自动化

当出现受支持的验证码时,帮助研究代理收集公共网络信息。

内部机器人流程自动化

支持用户授权的需要验证码解决的内部工作流程。

负责任的使用

专为合法且授权的自动化而构建

CapSolver 专为负责任的自动化而设计,包括授权的 QA 测试、批准的 RPA、公共数据工作流程和用户授权的代理任务。用户必须遵守适用的法律、网站条款、隐私要求和速率限制。 CapSolver 不支持未经授权的访问或恶意自动化。

01

授权的质量保证测试

02

批准的 RPA

03

公共数据工作流程

04

用户授权的代理任务

05

经过合规性审查的自动化

06

以辅助功能为中心的自动化

常见问题解答

相关集成

探索更多适用于您的代理堆栈的 CapSolver 集成

选择另一个集成将验证码解决添加到您的代理或浏览器工作流程中。

01

MCP服务器

将 CapSolver 连接到支持 MCP 工具的其他客户端。

查看集成
02

剧作家

将验证码解决添加到自定义浏览器自动化中。

查看集成
03

浏览器使用

添加 CapSolver 作为基于浏览器的 AI 代理的操作。

查看集成
04

浪链

使用CapSolver作为LangChain代理中的可调用工具。

查看集成

将验证码解决添加到您的 OpenAI Agents SDK 应用程序

从免费试用开始,添加 CapSolver 作为功能工具,然后按照集成指南进行操作。