My Experience with SolveCaptcha: The Best Cloudflare CAPTCHA Solver
I tried SolveCaptcha to bypass Cloudflare protections (Turnstile and similar) and the result was great: fast, reliable, and easy to integrate. Below are short examples showing the typical flow: submit a task to in.php
and poll res.php
to get the answer.
Quick summary of the flow
-
Send a request to
https://api.solvecaptcha.com/in.php
withmethod=turnstile
,sitekey
,pageurl
andkey
→ you get anid
. -
Poll
https://api.solvecaptcha.com/res.php
with thatid
→ receive solved token (and optionallyuseragent
). -
Insert the token into the form (
cf-turnstile-response
org-recaptcha-response
) and submit.
1) cURL (submit task)
Response example
Save request
(ID) to poll for the result.
2) cURL (get result)
Possible response
request
now contains the token to put into cf-turnstile-response
(or g-recaptcha-response
) before submitting the form.
3) Python example (submit + poll)
4) Node.js (axios) example
5) In-page JS: capture parameters from turnstile.render (useful for Cloudflare Challenge pages)
If Turnstile is initialized on the page with turnstile.render(...)
, you can override it to capture parameters (sitekey, cData, chlPageData, action) and then send them to your solving endpoint:
После того как вы собрали sitekey
, data
, pagedata
, action
— передаёте их на in.php
как параметры (см. ниже).
6) Example request for Cloudflare Challenge pages (with extra params)
(Отправляйте параметр data
и pagedata
только если Turnstile Challenge требует их — они нужны для обхода страницы вызова Turnstile.)
7) Browser fetch (CORS) note
If you call in.php
directly from client-side JS, you may hit CORS restrictions. Use header_acao=1
parameter on in.php
(if supported by your account) to ask the server to include Access-Control-Allow-Origin: *
in the response, or proxy the request via your backend.
Пример с header_acao
:
8) Chrome extension & local testing
SolveCaptcha also provides Chrome extension options for convenience (manual/automatic solving in interactive browsing). For automated flows, API integration (server or headless client) is the most reliable.
Practical tips & gotchas
-
Poll interval: 2–5 seconds is common. Don’t poll too frequently.
-
Only pay on success: SolveCaptcha charges for solved CAPTCHAs — handle failures and retry logic in client code.
-
User-Agent: some challenge pages require the same user agent that was present when the challenge was created — include or pass that if available.
-
Proxy: if the site restricts by IP, pass
proxy
/proxytype
parameters toin.php
. Format:login:pass@ip:port
. -
Turnstile on challenge pages: you must extract
data
andpagedata
(chlPageData) as shown above — otherwise solving may fail.
I integrated SolveCaptcha with a few projects and it noticeably removed Cloudflare interruptions: the API is simple, returns an ID instantly, and the result arrives in seconds. The code above is all you need to start — pick cURL / Python / Node example that fits your stack and adapt parameters (sitekey
, pageurl
, data
, pagedata
, action
, proxy
) as required.
Комментарии
Отправить комментарий