跳转到内容

Cloudflare 5 秒盾

Cloudflare 5 秒盾是整个页面被 Cloudflare 拦下、显示“请稍候…”“正在检查您的浏览器”的检查页。YesCaptcha 用你提供的代理打开页面并通过检查,返回 cf_clearance 等 Cookie 和当时用的 User-Agent。CloudFlareTaskS3 每个任务 20 点(0.02 元),异步返回。识别失败、超时自动退点。

POSThttps://api.yescaptcha.com/createTask国际节点
POSThttps://cn.yescaptcha.com/createTask国内节点
  • 页面源码里有 __cf_chl_rt_tk 或 cdn-cgi/challenge-platform,标题是 Just a moment... / “请稍候”:是 5 秒盾。
  • 只是表单里嵌着 Cloudflare 的验证框:那是 Turnstile,不用这一页。
  • 用 requests 之类的库请求时返回 403 和“Just a moment…”,但浏览器能直接打开:多半只是 TLS 指纹被拦,换用能模拟浏览器 TLS 指纹的库(如 curl_cffi)就能请求,不需要过盾。
任务类型价格返回方式说明
CloudFlareTaskS225 点(0.025 元)异步不推荐自带代理
CloudFlareTaskS320 点(0.02 元)异步不推荐自带代理
字段类型必填说明
typestring是任务类型,取值见本页"类型与价格"
websiteURLstring是出现验证码的网页地址(完整 URL)。填你看到验证码的网站,不要填验证码厂商的域名
proxystring是代理地址,一个字符串,例如 http://user:[email protected]:8080、socks5://proxy.example.com:1080;不支持带密码的 socks5 代理,不能用本机或内网地址
waitLoadboolean否是否等页面完全加载后再返回。需要完整网页内容时传 true,会多花一些时间
requiredCookiesarray否要求返回的 Cookie 名称列表,默认 ["cf_clearance"];可以写多个,但不保证都能拿到
blockImageboolean否是否不加载图片,用于节省代理流量
postDataobject否传了这个字段时,用 POST 方式打开目标地址,内容是这个对象,例如 {"name": "hi"}

不要传自定义的 User-Agent,后续请求用接口返回的 user_agent。

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "CloudFlareTaskS3",
"websiteURL": "https://example.com/",
"proxy": "http://user:[email protected]:8080",
"waitLoad": false,
"requiredCookies": [
"cf_clearance"
]
}
}

创建后每 5 秒调用 getTaskResult,流程和其他异步任务一样,见 getTaskResult。

{
"errorId": 0,
"status": "ready",
"solution": {
"cookies": { "cf_clearance": "zqKrlel6E6_SM2707VdArsu2c5.bYqLKU3DOl4tlkCE-1691687641-0-1-8d7f630c..." },
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"request_headers": { "accept-language": "zh-CN,zh;q=0.9", "user-agent": "Mozilla/5.0 ..." },
"headers": { "server": "cloudflare" },
"content": "<!DOCTYPE html>..."
}
}
字段类型说明
cookiesobject通过验证后得到的 Cookie,一般包含 cf_clearance。要和返回的 user_agent、创建任务时用的代理一起使用
user_agentstring通过验证时用的 User-Agent,后续请求必须用这个值
request_headersobject通过验证时发出的请求头,建议后续请求带上
headersobject目标网站的响应头
contentstring目标网页的 HTML 源码
  1. 后续请求同时用返回的 Cookie、返回的 user_agent、创建任务时的同一个代理,Cloudflare 要求三者一致。
  2. 请求头尽量带上 request_headers,并使用和浏览器一致的 TLS 指纹(例如 curl_cffi 的 impersonate 参数)。
  3. cf_clearance 有有效期(有的网站长达 1 小时),有效期内不需要重复过盾,但请求频率太高可能被 Cloudflare 封 IP。