Skip to content
On this page
Home
>Tarefa (Token)
>Cloudflare (catraca)

Cloudflare: Resolvendo Turnstile

TIP

Crie a tarefa com o método createTask e obtenha o resultado com o método getTaskResult.

DANGER

ℹ️ Este tipo de tarefa requer os seus próprios proxies.

Compatível

Oferecemos suporte à maioria dos sites protegidos pelo Cloudflare, incluindo desafios de 5 segundos, catracas, captcha e outros sites com modo de verificação. No entanto, como o modo do site pode ser personalizado, se o seu site não oferecer suporte, entre em contato conosco.

O código de verificação do desafio Turnstile/Challenge é outra tentativa de substituir o reCaptcha/hCaptcha. Oferecemos suporte automaticamente a todos os seus subtipos:

  • turnstile
    • Manualmente
    • Não interativo
    • Invisível
  • challenge
    • 5s challenge
    • turnstile não interativa
    • hCaptcha não interativo

Não é necessário especificar subtipos durante a chamada. Também não é necessário fornecer seu próprio User-Agent personalizado, pois iremos ignorar esse parâmetro.

TipoNotaEstado
img.pngturnstilestable

O tipo de tarefa type é o seguinte

  • AntiCloudflareTask Proxy necessário

Criar Tarefa

Crie a tarefa com o método createTask.

No processo de uso da catraca, é necessário inserir websiteURL, websiteKey, proxy, outros parâmetros são opcionais.

Estrutura do Objeto de Tarefa

PropriedadesTipoObrigatórioDescrição
typeStringRequiredAntiCloudflareTask
websiteURLStringRequiredO endereço da página de destino.
websiteKeyStringRequiredChave do site da catraca.
proxyStringRequiredAprenda a usar proxies

Exemplo de solicitação

txt
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
json
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "AntiCloudflareTask",
    "websiteURL": "https://peet.ws/turnstile-test/non-interactive.html",
    "websiteKey": "0x4AAAAAAABS7vwvV6VFfMcD",
    "proxy": "socks5:158.120.100.23:334:user:pass"
  }
}

Exemplo de Resposta

json
{
  "errorId": 0,
  "status": "idle",
  // Registre o taskId
  "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Obtendo Resultados

Use o método getTaskResult para obter os resultados de reconhecimento

Dependendo da carga do sistema, você obterá os resultados dentro do intervalo de 1 segundo a 20 segundos

Exemplo de solicitação

txt
POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json
json
{
  "clientKey": "YOUR_API_KEY",
  "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Exemplo de Resposta

json
{
  "errorId": 0,
  "errorCode": null,
  "errorDescription": null,
  "solution": {
    "token": "0.mF74FV8wEufAWOdvOak_xFaVy3lqIDel7SwNhw3GgpICSWwTjYfrQB8mRT1dAJJBEoP7N1sESdp6WH9cTS1T0catWLecG3ayNcjwxVtr3hWfS-dmcBGRTx4xYwI64sAVboYGpIyuDBeMIRC3W8dK35v1nDism9xa595Da5VlXKM7hk7pIXg69lodfiftasIkyD_KUGkxBwxvrmz7dBo10-Y5zvro9hD4QKRjOx7DYj9sumnkyYCDx0m4ImDIIkNswfVTWI2V22wlnpHdvMgdtKYgOIIAU28y9gtdrdDkpkH0GHcDyd15sxQGd9VjwhGZA_mpusUKMsEoGgst2rJ3zA.UWfZupqLlGvlATkPo3wdaw.38d55cd0163610d8ce8c42fcff7b62d8981495cc1afacbb2f14e5a23682a4e13",
    "type": "catraca",
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36"
  },
  "status": "ready"
}

Solicitação usando SDK

python
# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'

import capsolver

# capsolver.api_key = "..."
solution = capsolver.solve({
    "type": "AntiCloudflareTask",
    "websiteURL": "https://peet.ws/turnstile-test/non-interactive.html",
    "websiteKey": "0x4AAAAAAABS7vwvV6VFfMcD",
})
go
package main

import (
	"fmt"
	capsolver_go "github.com/capsolver/capsolver-go"
	"log"
)

func main() {
	// first you need to install sdk
	//go get github.com/capsolver/capsolver-go
	//export CAPSOLVER_API_KEY='...' or
	//capSolver := CapSolver{ApiKey:"..."}

	capSolver := capsolver_go.CapSolver{}
	solution, err := capSolver.Solve(map[string]any{
		"type":       "AntiCloudflareTask",
		"websiteURL": "https://peet.ws

/turnstile-test/non-interactive.html",
		"websiteKey": "0x4AAAAAAABS7vwvV6VFfMcD",
	})
	if err != nil {
		log.Fatal(err)
		return
	}
	fmt.Println(solution)
}