
Anh Tuan
Data Science Expert

capsolver-core phù hợp với các kịch bản Playwright, capsolver-agent phù hợp với các agent gọi công cụ, và capsolver-mcp phù hợp với các khách hàng tương thích MCP.Công việc giải CAPTCHA của CrewAI cần có ranh giới công cụ ở cấp độ mã giữa lập kế hoạch, điều khiển trình duyệt và xem xét. CapSolver nên được tích hợp như một khả năng được tài liệu hóa: trình duyệt hoặc mô hình phát hiện một thử thách xác minh, công cụ được phê duyệt xử lý nó, và agent tiếp tục chỉ khi nhiệm vụ được người dùng ủy quyền ban đầu vẫn còn hợp lệ. Tài liệu AI của CapSolver chính thức mô tả ba lớp thực tế: CapSolver cho AI Agent cho kiến trúc, Core SDK chế độ trình duyệt cho luồng Playwright, các lược đồ công cụ agent cho các cuộc gọi được kiểm soát bởi mô hình, và các công cụ dịch vụ MCP cho các khách hàng có thể phát hiện công cụ qua Giao thức Nội dung Mô hình. Bài viết này biến các tài liệu đó thành quy trình giải CAPTCHA CrewAI sản xuất với mã, quy tắc dừng và trường ghi nhật ký.
Tài liệu AI của CapSolver mô tả ba lớp. Sử dụng lớp thấp nhất phù hợp với mô hình sở hữu của bạn: Core SDK khi mã của bạn kiểm soát trình duyệt, công cụ agent khi mô hình quyết định khi nào gọi công cụ, và dịch vụ MCP khi AI client của bạn nên phát hiện công cụ giải CAPTCHA tự động.
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"
Giới thiệu và Bắt đầu nhanh giải thích vai trò của các gói: capsolver-core mở rộng động cơ, capsolver-agent bao bọc nó thành công cụ, và capsolver-mcp mở rộng cùng khả năng cho khách hàng MCP. Giữ khóa API trong cấu hình môi trường và tránh đặt nó vào lời nhắc, nhật ký, hình ảnh chụp màn hình hoặc ví dụ bài viết.
Một triển khai CrewAI nên giao cho mỗi vai trò một trách nhiệm hẹp. Người lập kế hoạch xác định rằng trang bị chặn bởi thử thách xác minh. Người điều hành trình duyệt sở hữu điều hướng. Người xử lý công cụ CapSolver sở hữu bước thử thách. Người xem xét sở hữu quyết định cuối cùng khi chạy không chắc chắn.
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"])
Lối vào nhỏ này là điều giữ cho hành vi giải CAPTCHA của CrewAI hiển thị. Crew chỉ có thể yêu cầu sự giúp đỡ khi trang nằm trong phạm vi và ngân sách thử lại vẫn còn.
Sử dụng capsolver-agent khi mô hình nên chọn thời điểm xử lý thử thách. Hướng dẫn Công cụ Agent công khai định nghĩa công cụ với get_all_tools() và định tuyến các cuộc gọi công cụ mô hình qua create_executor().
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": "Tiếp tục nhiệm vụ trình duyệt được phê duyệt. Nếu xuất hiện CAPTCHA, gọi công cụ CapSolver một lần và báo cáo kết quả."
}]
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),
})
Đối với giải CAPTCHA CrewAI, liên kết đường đi công cụ này với chính sách xem xét. Mô hình có thể yêu cầu công cụ, nhưng ứng dụng của bạn quyết định phạm vi URL được phép, số lần thử tối đa và liệu kết quả có thể được sử dụng để tiếp tục hay không.
Sử dụng capsolver-core khi luồng giải CAPTCHA CrewAI của bạn đã sở hữu trang Playwright. Đường dẫn SDK Core chính thức là phát hiện, đọc thông tin CAPTCHA, giải và điền lại mã token vào trang. Gọi trình duyệt toàn diện hữu ích khi cấu trúc trang là động.
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())
Chi tiết kỹ thuật quan trọng là giá trị trả về, không chỉ mã token. Agent của bạn nên tiếp tục chỉ khi nhiệm vụ ban đầu vẫn hợp pháp, hợp lý và được người dùng ủy quyền. Nó nên dừng lại khi trang yêu cầu dữ liệu riêng tư, bị hạn chế, nhạy cảm hoặc không được ủy quyền.
Nhận mã thưởng CapSolver của bạn
Tăng ngân sách tự động của bạn ngay lập tức!
Sử dụng mã thưởng CAP26 khi nạp tiền vào tài khoản CapSolver để nhận thêm 5% thưởng cho mỗi lần nạp — không giới hạn.
Nhận mã thưởng ngay bây giờ trong Bảng điều khiển CapSolver
Trước khi gọi bất kỳ công cụ thử thách nào, xác nhận rằng nhiệm vụ được người dùng ủy quyền, mục tiêu nằm trong danh sách miền được phê duyệt và dữ liệu đang truy cập là công khai hoặc được phép khác. Một quy trình giải CAPTCHA CrewAI nên không bao giờ coi khả năng kỹ thuật là sự cho phép.
Sử dụng ngân sách thử lại nhỏ. Một lần thử lại trạng thái trình duyệt và một lần thử lại chờ đợi thường là đủ. Các sự kiện thử thách lặp lại nên tạo vé xem xét thay vì tiếp tục âm thầm.
Ghi lại URL, thời gian, loại thử thách, đường dẫn gói CapSolver, số lần thử, trạng thái kết quả và trạng thái trang cuối cùng. Không lưu trữ nội dung trang không liên quan, thông tin đăng nhập, bí mật phiên hoặc dữ liệu cá nhân trừ khi chính sách của bạn cho phép rõ ràng.
Đối với giải CAPTCHA CrewAI, hãy giữ cho quá trình hợp pháp và dựa trên bằng chứng: tôn trọng hành vi mã trạng thái HTTP, yêu cầu tính khả dụng, quản lý rủi ro quyền riêng tư và trách nhiệm dữ liệu công cộng.
Một bài viết giải CAPTCHA CrewAI mạnh mẽ nên hiển thị các con đường triển khai thực tế, và một quy trình sản xuất mạnh mẽ nên làm như vậy. Lựa chọn thực tế đơn giản là: sử dụng capsolver-core cho tự động hóa trình duyệt do mã sở hữu, capsolver-agent cho agent gọi công cụ, và capsolver-mcp cho khách hàng tương thích MCP. Giữ xử lý thử thách có giới hạn, được ghi nhật ký và liên kết với công việc được người dùng ủy quyền hợp pháp. Khi đội của bạn sẵn sàng thêm lớp phục hồi vào quy trình agent, bắt đầu với CapSolver và tài liệu agent AI chính thức.
Sử dụng capsolver-core khi ứng dụng của bạn sở hữu mã trình duyệt, capsolver-agent khi mô hình nên gọi công cụ, và capsolver-mcp khi AI client nên phát hiện công cụ qua MCP.
Không. Mô hình có thể yêu cầu gọi công cụ, nhưng ứng dụng nên thực thi phạm vi, giới hạn thử lại và điều kiện dừng.
Không. Việc xử lý CAPTCHA không cấp quyền. Sử dụng nó chỉ cho các quy trình được người dùng ủy quyền hợp pháp, hợp lý, tôn trọng điều khoản trang và quyền dữ liệu.
Ghi lại URL nguồn, loại thử thách, đường dẫn công cụ, số lần thử, trạng thái kết quả và trạng thái trang cuối cùng. Giữ thông tin đăng nhập và nội dung trang không liên quan trong nhật ký.
Nội dung công cụ giải CAPTCHA của OpenAI Agents nên thể hiện cách lời gọi công cụ vào và thoát khỏi vòng lặp mô hình. CapSolver nên được tích hợp như một khả năng của tác nhân được tài liệu hóa: trình duyệt hoặc mô hình phát hiện thách thức xác minh, công cụ được phê duyệt xử lý nó, và tác nhân chỉ tiếp tục khi nhiệm vụ được ủy quyền ban đầu vẫn còn hợp lệ. Tài liệu chính thức của CapSolver AI mô tả ba lớp thực tế: CapSolver cho AI Agents cho kiến trúc, chế độ trình duyệt Core SDK cho Playwright.

Hướng dẫn từng bước để giải quyết reCAPTCHA v2 trong các tác nhân LangChain bằng công cụ CapSolver capsolver-agent, bao gồm cả chế độ Token và chế độ Trình duyệt với các ví dụ mã nguồn.
