Cách giải reCAPTCHA v3 trong CrewAI Agents với CapSolver

Anh Tuan
How to use CapSolver
01-Sep-2026
TL;DR
- Một trình giải reCAPTCHA v3 của CrewAI nên là công cụ có kiểu hạn chế, không phải trình duyệt tổng quát hoặc hàm xử lý URL bất kỳ.
- Giải quyết URL mục tiêu, khóa trang web, hành động trang mong muốn và chính sách điểm số từ một kho lưu trữ phía máy chủ thay vì từ văn bản do mô hình tạo ra.
- Sử dụng các tham số nhiệm vụ reCAPTCHA v3 được tài liệu hóa của CapSolver và giữ các cài đặt doanh nghiệp, proxy và phiên rõ ràng.
- Gửi mã thông báo được trả về trong mã ứng dụng đáng tin cậy; chỉ trả về đối tượng trạng thái đã được che giấu cho tác nhân CrewAI.
- Xem kết quả trình giải là bước trung gian và xác minh rằng trạng thái trang mong muốn đã thay đổi trước khi đoàn tiếp tục.
Giới thiệu
Cách an toàn nhất để giải reCAPTCHA v3 trong CrewAI là mở rộng CapSolver qua một công cụ có kiểu và kiểm soát chính sách. CrewAI nên quyết định khi nhiệm vụ cần xác minh, nhưng mã ứng dụng đáng tin cậy nên giải quyết các mục tiêu được phê duyệt, khóa trang web, hành động trang, chế độ proxy và chính sách điểm số. Tài liệu reCAPTCHA v3 của CapSolver định nghĩa các loại nhiệm vụ và tham số được hỗ trợ, trong khi SDK Agent do người dùng cung cấp ánh xạ các lời gọi công cụ có cấu trúc đến capsolver-core. Công cụ nên gửi mã thông báo phía máy chủ, xác minh trạng thái trang kết quả và cung cấp cho đoàn một kết quả nhỏ như verified, review_required hoặc stopped. Thiết kế này ngăn chặn sự trôi URL, đoán hành động, rò rỉ bí mật, giải lại trùng lặp và tín hiệu thành công giả.
Tại sao reCAPTCHA v3 cần một công cụ khác cho CrewAI
reCAPTCHA v3 dựa trên điểm số và thường chạy mà không có hộp kiểm hiển thị. Ứng dụng mục tiêu gọi một hành động, nhận được mã thông báo và đánh giá mã thông báo đó trên máy chủ. Do đó, quy trình CrewAI có thể thất bại ngay cả khi nó chưa bao giờ thấy thử thách trực quan.
Các nguyên nhân phổ biến là vận hành thay vì giao tiếp:
- Công cụ sử dụng khóa trang web sai;
pageActionkhông khớp với hành động chạy trên trang;- Mã thông báo được gửi đến đường dẫn hoặc trạng thái trình duyệt khác;
- Loại nhiệm vụ không khớp với Standard hoặc Enterprise;
- Đoàn coi việc hoàn thành nhiệm vụ là xác minh ứng dụng;
- Cùng một bước tạo nhiều mã thông báo mà không có thay đổi trạng thái.
Bài viết blog reCAPTCHA của CapSolver https://www.capsolver.com/blog/recaptcha chứa hướng dẫn triển khai hỗ trợ, trong khi FAQ AI và tự động hóa https://www.capsolver.com/faq/ai-and-automation giúp xác định ranh giới an toàn cho tác nhân.
Tách biệt vai trò của đoàn khỏi quyền lực trình giải
Một đoàn đa tác nhân hoạt động tốt nhất khi trách nhiệm rõ ràng.
| Vai trò | Trách nhiệm được phép | Không được kiểm soát |
|---|---|---|
| Người định hướng | Quan sát trạng thái ứng dụng được phê duyệt | Mã API, thông tin xác thực proxy, mã thông báo thô |
| Kế hoạch xác minh | Quyết định xem bước được phê duyệt có cần công cụ hay không | URL hoặc khóa trang bất kỳ |
| Công cụ CapSolver | Giải quyết chính sách, tạo một nhiệm vụ, gửi mã thông báo | Thử lại không giới hạn hoặc lướt web không liên quan |
| Xác minh trạng thái | Xác nhận đường dẫn và các dấu hiệu ngữ nghĩa mong muốn | Quyết định phê duyệt kinh doanh |
| Người xem xét | Kiểm tra bằng chứng đã che giấu khi thất bại | Vật liệu phiên bí mật |
Mô hình có thể chọn ID mục tiêu đã đăng ký. Nó không nên tạo URL mục tiêu hoặc tham số thử thách.
Sử dụng Mẫu Công cụ CrewAI Chính thức
Tài liệu custom-tool của CrewAI hỗ trợ BaseTool với args_schema Pydantic, bộ định danh @tool, kết quả có kiểu và công cụ bất đồng bộ cho các thao tác I/O.
Tài liệu Agent CapSolver do người dùng cung cấp giải thích rằng capsolver-agent bao bọc capsolver-core: create_executor() tạo executor, và executor.execute("solve_captcha", args) phân phát yêu cầu có kiểu đến động cơ cốt lõi.
Cài đặt các gói được tài liệu hóa:
bash
pip install git+https://github.com/capsolver-ai/capsolver-core.git
pip install git+https://github.com/capsolver-ai/capsolver-agent.git
pip install crewai
export CAPSOLVER_API_KEY="CAP-..."
Giữ các khóa trong kho lưu trữ bí mật thời gian chạy. Không đặt chúng trong lời nhắc đoàn, mô tả nhiệm vụ hoặc kết quả công cụ.
Định nghĩa Kho Đăng ký Mục Tiêu Được Tin Cậy
python
from dataclasses import dataclass
@dataclass(frozen=True)
class RecaptchaV3Policy:
target_id: str
website_url: str
website_key: str
page_action: str
minimum_score: float
enterprise: bool
proxy_profile: str | None
allowed_crew_role: str
max_attempts: int = 1
TARGETS = {
"approved_login_test": RecaptchaV3Policy(
target_id="approved_login_test",
website_url="https://approved.example.com/login",
website_key="PUBLIC_SITE_KEY",
page_action="login",
minimum_score=0.7,
enterprise=False,
proxy_profile=None,
allowed_crew_role="verification_specialist",
)
}
Khóa trang web công khai không phải là bí mật tài khoản, nhưng nó vẫn nên đến từ cấu hình đáng tin cậy để mô hình không thể chuyển hướng công cụ.
Quan sát pageAction Thay vì Đoán Nó
Tài liệu reCAPTCHA v3 của CapSolver reCAPTCHA v3 liệt kê pageAction như một trường nhiệm vụ tùy chọn và giải thích rằng giá trị có thể được tìm thấy trong cuộc gọi grecaptcha.execute trên trang.
python
@dataclass(frozen=True)
class PageObservation:
target_id: str
current_url: str
observed_action: str
observed_site_key: str
form_state: str
observed_at: str
def validate_observation(
observation: PageObservation,
policy: RecaptchaV3Policy,
) -> None:
if observation.current_url != policy.website_url:
raise PermissionError("Observed URL does not match policy")
if observation.observed_site_key != policy.website_key:
raise ValueError("Observed site key does not match policy")
if observation.observed_action != policy.page_action:
raise ValueError("Observed page action does not match policy")
if observation.form_state != "READY_FOR_VERIFICATION":
raise ValueError("Application state is not ready")
Công cụ nên từ chối các sự không khớp thay vì tạo mã thông báo cho tham số không chắc chắn.
Hiểu Các Tham Số CapSolver v3
| Tham số | Mục đích | Quy tắc chính sách |
|---|---|---|
captcha_type |
Chọn reCAPTCHA v3 trong SDK Agent | Cố định thành reCaptchaV3 |
website_url |
Trang chứa thử thách | Tải từ kho lưu trữ |
website_key |
Khóa trang web công khai | Tải từ kho lưu trữ và kiểm tra với trang |
page_action |
Hành động v3 chạy | Phải khớp với quan sát |
min_score |
Điểm số tối thiểu được yêu cầu | Thiết lập bởi chính sách mục tiêu |
enterprise |
Đường đi Standard hoặc Enterprise | Cố định bởi cấu hình tích hợp |
proxy |
Xác định mạng tùy chọn | Giải quyết từ hồ sơ bí mật nếu cần |
CapSolver tài liệu các biến thể nhiệm vụ Standard, Enterprise, proxy và không proxy. Kết quả của nó có thể chứa gRecaptchaResponse, dữ liệu user-agent và giá trị phiên khi chế độ liên quan được bật.
Trang sản phẩm CapSolver https://www.capsolver.com/products giúp xác nhận gia đình nhiệm vụ được hỗ trợ trước khi triển khai.
Tạo Công Cụ CrewAI Có Kiểu
python
import os
from typing import Literal
from crewai.tools import tool
from pydantic import BaseModel, Field
from capsolver_agent.schema import create_executor
executor = create_executor(api_key=os.environ["CAPSOLVER_API_KEY"])
class SolveRequest(BaseModel):
target_id: str = Field(description="Định danh mục tiêu đã đăng ký")
crew_role: str = Field(description="Vai trò yêu cầu xác minh")
observed_action: str = Field(description="Hành động quan sát trên trang trực tiếp")
observed_site_key: str = Field(description="Khóa trang web quan sát trên trang trực tiếp")
state_id: str = Field(description="Định danh trạng thái ứng dụng phía máy chủ không rõ")
class SolveResult(BaseModel):
status: Literal["verified", "review_required", "stopped"]
target_id: str
state_id: str
reason: str
task_attempted: bool
Mô hình kết quả cố ý loại bỏ mã thông báo, khóa API, proxy, cookie và phản hồi nhà cung cấp thô.
Giải Quyền và Gửi Mã Thông Báo Phía Máy Chủ
python
PROXY_VAULT = {
"approved_proxy": os.environ.get("APPROVED_PROXY")
}
async def submit_token_and_verify(
*,
state_id: str,
token: str,
policy: RecaptchaV3Policy,
) -> bool:
"""Hàm submit và kiểm tra do ứng dụng sở hữu."""
response = await application_sessions.submit_recaptcha_v3(
state_id=state_id,
token=token,
expected_action=policy.page_action,
)
return (
response.current_url.startswith("https://approved.example.com/account")
and response.semantic_marker == "AUTHENTICATED_ACCOUNT_PAGE"
and response.challenge_present is False
)
application_sessions đại diện cho dịch vụ phiên trình duyệt hoặc HTTP được ủy quyền của bạn. Công cụ giải mã sử dụng nó, nhưng mô hình không nhận được thông tin xác thực của nó.
Triển Khai Công Cụ Bất Đồng Bộ
python
@tool("Giải reCAPTCHA v3 đã phê duyệt", result_schema=SolveResult)
async def solve_approved_recaptcha_v3(
target_id: str,
crew_role: str,
observed_action: str,
observed_site_key: str,
state_id: str,
) -> dict:
"""Giải một bước reCAPTCHA v3 đã đăng ký và xác minh trạng thái ứng dụng."""
policy = TARGETS.get(target_id)
if policy is None:
return SolveResult(
status="stopped",
target_id=target_id,
state_id=state_id,
reason="Mục tiêu không biết",
task_attempted=False,
).model_dump()
if crew_role != policy.allowed_crew_role:
return SolveResult(
status="stopped",
target_id=target_id,
state_id=state_id,
reason="Vai trò không được phép gọi công cụ này",
task_attempted=False,
).model_dump()
if observed_action != policy.page_action:
return SolveResult(
status="review_required",
target_id=target_id,
state_id=state_id,
reason="Hành động quan sát không khớp chính sách mục tiêu",
task_attempted=False,
).model_dump()
if observed_site_key != policy.website_key:
return SolveResult(
status="review_required",
target_id=target_id,
state_id=state_id,
reason="Khóa trang quan sát không khớp chính sách mục tiêu",
task_attempted=False,
).model_dump()
args = {
"captcha_type": "reCaptchaV3",
"website_url": policy.website_url,
"website_key": policy.website_key,
"page_action": policy.page_action,
"min_score": policy.minimum_score,
"enterprise": policy.enterprise,
}
if policy.proxy_profile:
args["proxy"] = PROXY_VAULT[policy.proxy_profile]
result = await executor.execute("solve_captcha", args)
if not result.get("success"):
return SolveResult(
status="review_required",
target_id=target_id,
state_id=state_id,
reason="Nhiệm vụ CapSolver không hoàn thành",
task_attempted=True,
).model_dump()
solution = result.get("solution") or {}
token = solution.get("token")
if not token:
return SolveResult(
status="review_required",
target_id=target_id,
state_id=state_id,
reason="Kết quả nhiệm vụ không chứa mã thông báo",
task_attempted=True,
).model_dump()
verified = await submit_token_and_verify(
state_id=state_id,
token=token,
policy=policy,
)
return SolveResult(
status="verified" if verified else "review_required",
target_id=target_id,
state_id=state_id,
reason="Trạng thái ứng dụng được xác minh" if verified else "Trạng thái ứng dụng không được xác minh",
task_attempted=True,
).model_dump()
Triển khai này giữ bí mật trong mã đáng tin cậy và cung cấp cho đoàn chỉ trạng thái an toàn theo chính sách.
Gắn Công Cụ Với Một Tác Nhân
python
from crewai import Agent, Crew, Process, Task
verification_agent = Agent(
role="verification_specialist",
goal="Hoàn thành chỉ các bước xác minh đã đăng ký và báo cáo trạng thái đã xác minh",
backstory=(
"Bạn vận hành các công cụ xác minh được phê duyệt. Bạn không bao giờ tạo ID mục tiêu, "
"khóa trang, hành động, thông tin xác thực hoặc trạng thái thành công."
),
tools=[solve_approved_recaptcha_v3],
allow_delegation=False,
verbose=True,
)
verification_task = Task(
description=(
"Đối với mục tiêu đã đăng ký trong quan sát được cung cấp, gọi công cụ một lần "
"chỉ khi URL, khóa trang, hành động và trạng thái được xác nhận. Trả về kết quả "
"có cấu trúc mà không có bí mật."
),
expected_output="Một kết quả có cấu trúc, được xác minh, yêu cầu xem xét hoặc dừng.",
agent=verification_agent,
)
crew = Crew(
agents=[verification_agent],
tasks=[verification_task],
process=Process.sequential,
verbose=True,
)
Không gắn công cụ giải mã với mọi tác nhân. Giới hạn nó chỉ cho một vai trò sẽ làm rõ quyền hạn và kiểm toán.
Ngăn Gọi Công Cụ Đa Lần
python
from datetime import datetime, timedelta, timezone
ATTEMPTS: dict[tuple[str, str], datetime] = {}
def claim_attempt(target_id: str, state_id: str) -> bool:
key = (target_id, state_id)
now = datetime.now(timezone.utc)
prior = ATTEMPTS.get(key)
if prior and now - prior < timedelta(minutes=2):
return False
ATTEMPTS[key] = now
return True
Gọi claim_attempt() trước executor.execute(). Một thông điệp đoàn lặp lại không nên tạo mã thông báo thứ hai cho cùng một trạng thái ứng dụng.
Giữ Mã Thông Báo Ngoài Bộ Nhớ Đoàn
Bộ nhớ, dấu vết và nhật ký chi tiết của CrewAI có thể lưu trữ đầu ra công cụ. Chỉ trả về:
json
{
"status": "verified",
"target_id": "approved_login_test",
"state_id": "state_7c19",
"reason": "Trạng thái ứng dụng được xác minh",
"task_attempted": true
}
Không bao giờ trả về mã thông báo, khóa API CapSolver, giá trị proxy, cookie trình duyệt, HTML thô, mật khẩu hoặc dữ liệu biểu mẫu cá nhân.
FAQ lỗi và khắc phục sự cố của CapSolver https://www.capsolver.com/faq/errors-and-troubleshooting có thể hỗ trợ phân loại lỗi nhà cung cấp mà không tiết lộ phản hồi thô cho đoàn.
Xác Minh Trang Sau Khi Gửi
Người xác minh nên yêu cầu nhiều tín hiệu độc lập:
python
@dataclass(frozen=True)
class StateCheck:
expected_path_prefix: str
required_marker: str
forbidden_markers: tuple[str, ...]
def is_verified(page, check: StateCheck) -> bool:
return (
page.url.path.startswith(check.expected_path_prefix)
and page.has_semantic_marker(check.required_marker)
and not any(page.contains(marker) for marker in check.forbidden_markers)
and page.http_status == 200
)
Một URL thay đổi đơn lẻ không đủ. Yêu cầu đường dẫn mong muốn, dấu hiệu ngữ nghĩa, trạng thái và sự vắng mặt của các trạng thái thử thách hoặc lỗi đã biết.
Xử Lý Chế Độ Doanh Nghiệp và Phiên Một Cách Rõ Ràng
CapSolver ghi chú các phiên bản doanh nghiệp và chế độ phiên làm việc tùy chọn. Không để đội ngũ suy luận các tùy chọn này.
python
@dataclass(frozen=True)
class RecaptchaV3Policy:
target_id: str
website_url: str
website_key: str
page_action: str
minimum_score: float
enterprise: bool
is_session: bool
proxy_profile: str | None
allowed_crew_role: str
max_attempts: int = 1
Nếu mục tiêu được phê duyệt sử dụng doanh nghiệp, hãy lưu trữ thông tin đó trong chính sách. Nếu chế độ phiên làm việc cần thiết, xử lý các giá trị phiên được trả về bên trong dịch vụ phiên ứng dụng và giữ chúng khỏi đầu ra của đội ngũ.
Tóm tắt so sánh
| Thiết kế | Tính toàn vẹn tham số | An toàn bí mật | Đảm bảo trạng thái trang | Khuyến nghị |
|---|---|---|---|---|
| Mô hình cung cấp URL, khóa và hành động | Thấp | Thấp | Thấp | Tránh |
| Công cụ trả về token cho đội ngũ | Trung bình | Thấp | Thấp | Tránh |
| Công cụ được giải quyết bởi bảng tra cứu và xác minh | Cao | Cao | Cao | Ưa tiên |
| Bước xác minh chỉ dành cho con người | Cao | Cao | Cao | Sử dụng cho trạng thái nhạy cảm hoặc không chắc chắn |
Thiết kế được ưa chuộng cấp quyền ra quyết định cho mô hình nhưng giữ quyền thực thi bên trong mã tin cậy.
Thêm chỉ số vận hành
Theo dõi các trường đã che đi như:
- target ID;
- vai trò đội ngũ;
- khớp hành động quan sát;
- nhiệm vụ đã thực hiện;
- danh mục trạng thái nhà cung cấp;
- thời gian gửi;
- trang đã xác minh;
- lý do kiểm tra thủ công.
python
SAFE_FIELDS = {
"target_id",
"crew_role",
"action_match",
"task_attempted",
"provider_category",
"duration_ms",
"verified",
"review_reason",
}
def safe_event(event: dict) -> dict:
return {key: event[key] for key in SAFE_FIELDS if key in event}
Trang trạng thái CapSolver có thể giúp phân biệt khả năng sẵn sàng của nhà cung cấp với các lỗi ứng dụng cụ thể.
Kiểm tra công cụ trước khi sản xuất
python
import pytest
@pytest.mark.asyncio
async def test_unknown_target_stops_before_task():
result = await solve_approved_recaptcha_v3.run(
target_id="unknown",
crew_role="verification_specialist",
observed_action="login",
observed_site_key="x",
state_id="state-1",
)
assert result["status"] == "stopped"
assert result["task_attempted"] is False
@pytest.mark.asyncio
async def test_action_mismatch_requests_review():
result = await solve_approved_recaptcha_v3.run(
target_id="approved_login_test",
crew_role="verification_specialist",
observed_action="checkout",
observed_site_key="PUBLIC_SITE_KEY",
state_id="state-2",
)
assert result["status"] == "review_required"
assert result["task_attempted"] is False
Cũng kiểm tra chặn thử lại, che đi bí mật, xử lý token thiếu, chính sách doanh nghiệp và lỗi xác minh trang.
Mã thưởng: Sử dụng mã WEBS tại Bảng điều khiển CapSolver để nhận thêm 5% thưởng cho mỗi lần nạp tiền.
Danh sách kiểm tra sản xuất
- Đăng ký mỗi URL mục tiêu, khóa trang, hành động, điểm số và cài đặt doanh nghiệp phía máy chủ.
- Cho phép một vai trò CrewAI gọi công cụ giải quyết.
- Xác minh URL quan sát, khóa trang, hành động và trạng thái trước khi tạo nhiệm vụ.
- Sử dụng các tham số reCAPTCHA v3 được tài liệu hóa của CapSolver.
- Gửi token bên trong mã ứng dụng tin cậy.
- Trả về chỉ kết quả đã che đi cho đội ngũ.
- Cho phép một lần thử cho mỗi trạng thái ứng dụng quan sát.
- Xác minh đường dẫn, biển báo ngữ nghĩa, trạng thái và vắng mặt của thách thức.
- Giữ khóa, token, dữ liệu proxy, cookie và dữ liệu biểu mẫu khỏi bộ nhớ và nhật ký.
- Chuyển các trạng thái không chắc chắn hoặc nhạy cảm đến người kiểm tra.
Trang FAQ giải CAPTCHA của CapSolver cung cấp hướng dẫn bổ sung về chu kỳ cuộc sống nhiệm vụ.
Sử dụng có trách nhiệm
Sử dụng trình giải reCAPTCHA v3 của CrewAI chỉ trên các trang bạn sở hữu, kiểm thử hoặc có sự cho phép rõ ràng để tự động hóa. Tuân thủ các điều khoản, giới hạn tốc độ, ranh giới xác thực, nghĩa vụ bảo mật và chính sách truy cập nội bộ. Một khóa trang công khai không cấp phép truy cập vào quy trình được bảo vệ. Giữ các khoản nộp có hậu quả, thanh toán, thay đổi tài khoản và quyết định dữ liệu nhạy cảm phía sau các kiểm soát phê duyệt riêng biệt.
Kết luận
Một trình giải reCAPTCHA v3 của CrewAI trong môi trường sản xuất nên có phạm vi hẹp, kiểu dữ liệu rõ ràng và được kiểm soát bởi chính sách. CrewAI có thể xác định nhu cầu xác minh, nhưng mã tin cậy phải giải quyết mục tiêu, khóa trang, hành động trang, điểm số, chế độ doanh nghiệp và cài đặt mạng. CapSolver nên chạy một lần cho trạng thái đã xác minh, token nên được gửi từ phía máy chủ, và đội ngũ nên nhận chỉ kết quả đã che đi sau khi trang mong muốn được xác minh.
Bắt đầu triển khai có quyền hạn với CapSolver, kiểm tra trên trang được kiểm soát và thêm các bài kiểm tra tham số, gọi lặp lại, che đi và trạng thái trang trước khi sử dụng trong sản xuất.
FAQ
CrewAI có thể gọi CapSolver trực tiếp không?
CrewAI có thể gọi công cụ có kiểu dữ liệu mà ủy quyền cho trình thực thi CapSolver được tài liệu hóa. Giữ việc giải quyết mục tiêu, bí mật, gửi token và xác minh bên trong mã ứng dụng tin cậy.
Các tham số reCAPTCHA v3 nào là bắt buộc?
URL mục tiêu và khóa trang là bắt buộc. Hành động trang, điểm số tối thiểu, cài đặt doanh nghiệp, chế độ phiên làm việc và proxy phụ thuộc vào cấu hình mục tiêu được phê duyệt.
Mô hình có nên chọn hành động trang không?
Không. Quan sát hành động từ trang được phê duyệt trực tiếp và so sánh với giá trị chính sách phía máy chủ.
Token CapSolver có nên được trả lại cho đội ngũ không?
Không. Gửi nó bên trong mã tin cậy và chỉ trả lại trạng thái đã xác minh, yêu cầu kiểm tra hoặc dừng.
Một nhiệm vụ CrewAI nên thực hiện bao nhiêu lần thử?
Mặc định, chỉ thực hiện một lần thử cho mỗi trạng thái ứng dụng quan sát. Một lần thử thứ hai nên yêu cầu quan sát mới và quyết định chính sách rõ ràng.
Tuyên bố Tuân thủ: Thông tin được cung cấp trên blog này chỉ mang tính chất tham khảo. CapSolver cam kết tuân thủ tất cả các luật và quy định hiện hành. Việc sử dụng mạng lưới CapSolver cho các hoạt động bất hợp pháp, gian lận hoặc lạm dụng là hoàn toàn bị cấm và sẽ bị điều tra. Các giải pháp giải captcha của chúng tôi nâng cao trải nghiệm người dùng trong khi đảm bảo tuân thủ 100% trong việc giúp giải quyết các khó khăn về captcha trong quá trình thu thập dữ liệu công khai. Chúng tôi khuyến khích việc sử dụng dịch vụ của chúng tôi một cách có trách nhiệm. Để biết thêm thông tin, vui lòng truy cập Điều khoản Dịch vụ và Chính sách Quyền riêng tư.
Thêm

Cách cài đặt CapSolver MCP từ MCP Registry chính thức
Tìm CapSolver MCP trong Cơ sở dữ liệu MCP Chính thức, cài đặt phiên bản 0.1.3 bằng uvx hoặc pip, cấu hình một client cục bộ và kiểm tra các công cụ stdio.

Anh Tuan
18-Sep-2026

Công cụ CAPTCHA AI Pydantic: Đầu vào có kiểu và Kết quả giải
Thêm công cụ CAPTCHA vào Pydantic AI bằng cách sử dụng adapter CapSolver chính thức, kiểm tra việc thực thi công cụ tại chỗ, và xử lý đầu vào có kiểu và kết quả giải quyết có cấu trúc.

Anh Tuan
18-Sep-2026

MCP so với CLI cho các tác nhân AI: Chi phí ngữ cảnh và Xử lý lỗi
So sánh các giao diện MCP và CLI cho các tác nhân AI theo các yếu tố khám phá công cụ, chi phí ngữ cảnh, bảo mật, gỡ lỗi, xử lý sự cố và kiến trúc lai.

Anh Tuan
18-Sep-2026

Cách xử lý nhiều khối CAPTCHA trong các tác nhân trình duyệt AI
Xử lý nhiều phần tử CAPTCHA trên một trang với sự sở hữu biểu mẫu rõ ràng, tham số giải quyết, định tuyến kết quả và kiểm tra hành động của đại diện AI mong muốn.

Lucas Mitchell
15-Sep-2026

Các Đại diện AI so với Các Kịch Bản: Cách Chọn Cho Tự Động Hóa Web
Chọn giữa các tác nhân AI, các tập lệnh và tự động hóa web lai dựa trên độ không chắc chắn của nhiệm vụ, khả năng kiểm thử, chi phí và các biện pháp kiểm soát cần thiết để thực thi đáng tin cậy.

Lucas Mitchell
11-Sep-2026

Máy chủ MCP của CapSolver đã có sẵn cho các tác nhân AI
Cài đặt Máy chủ CapSolver MCP từ PyPI và cung cấp cho các đại diện AI tương thích năm công cụ để xử lý CAPTCHA được ủy quyền qua Giao thức Bối cảnh Mô hình.

Anh Tuan
10-Sep-2026

