
Rajinder Singh
Deep Learning Researcher

令人沮丧的验证码……

永恒的斗争——验证码试图区分人类和机器人
虽然验证码保护网站免受垃圾邮件的侵害,但它们可能会阻止合法的自动化操作,例如:

您的 Capsolver 仪表板 - API 密钥所在位置
安装需求:
pip install requests
获取您的 API 密钥:
clientKey
验证码解决过程的工作原理
完整的代码演练:
# pip install requests
import requests
import time
# TODO: 设置您的配置
api_key = "YOUR_API_KEY" # 您的 capsolver api 密钥
site_key = "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_kl-" # 您目标网站的站点密钥
site_url = "" # 您目标网站的页面 URL
def capsolver():
payload = {
"clientKey": api_key,
"task": {
"type": 'ReCaptchaV3TaskProxyLess',
"websiteKey": site_key,
"websiteURL": site_url,
"pageAction": "login",
}
}
res = requests.post("https://api.capsolver.com/createTask", json=payload)
resp = res.json()
task_id = resp.get("taskId")
if not task_id:
print("创建任务失败:", res.text)
return
print(f"获取 taskId:{task_id} / 获取结果...")
while True:
time.sleep(1) # 延迟
payload = {"clientKey": api_key, "taskId": task_id}
res = requests.post("https://api.capsolver.com/getTaskResult", json=payload)
resp = res.json()
status = resp.get("status")
if status == "ready":
return resp.get("solution", {}).get('gRecaptchaResponse')
if status == "failed" or resp.get("errorId"):
print("解决失败!响应:", res.text)
return
token = capsolver()
print(token)
您将遇到的常见验证码类型
| 任务类型 |
|---|
| ReCaptchaV2Task / ReCaptchaV2TaskProxyless |
| ReCaptchaV3Task / ReCaptchaV3TaskProxyless |
| GeeTestTask / GeeTestTaskProxyless |
| AntiTurnstileTaskProxyless |
| ImageToTextTask |

当您的验证码解决方案失败时……
常见修复:
通过我们面向开发人员的全面API文档,掌握验证码解决技巧。学习如何将CapSolver集成到您的系统中,以处理reCAPTCHA、AWS WAF以及更多内容。
