Skip to content
On this page
Home
>Tarea (Token)
>Cloudflare(turnstile)

Cloudflare: resolviendo Turnstile

::: consejo Crea la tarea utilizando el método createTask y obtén el resultado con el método getTaskResult. :::

::: peligro ℹ️ Este tipo de tarea requiere tus propios proxies. :::

::: advertencia Soportado Admitimos la mayoría de los sitios protegidos por Cloudflare, incluyendo el desafío de 5 segundos, el torno, captcha y otros sitios con modo de verificación. Pero dado que el modo del sitio puede personalizarse, si tu sitio no es compatible, por favor, contáctanos. :::

El código de verificación Turnstile/Challenge es otro intento de reemplazar reCaptcha/hCaptcha. Soportamos automáticamente todos sus subtipos:

  • turnstile
    • Manualmente
    • No interactivo
    • Invisible
  • desafío
    • 5s challenge
    • turnstile no interactivo
    • hCaptcha no interactivo

No es necesario especificar subtipos durante tu llamada. Aún no es necesario proporcionar tu propio User-Agent, ya que ignoraremos este parámetro.

TipoNotaEstado
img.pngturnstilestable

El tipo de tarea type es el siguiente:

  • AntiCloudflareTask Se requieren proxies

Crear Tarea

Crea la tarea con el método createTask.

En el proceso de uso del torno, debemos introducir websiteURL,websiteKey,proxy, los demás parámetros son opcionales.

Estructura del Objeto de Tarea

PropiedadesTipoRequeridoDescripción
typeStringRequiredAntiCloudflareTask
websiteURLStringRequiredLa dirección de la página objetivo.
websiteKeyStringRequiredClave del sitio Turnstile.
proxyStringRequiredAprende cómo usar proxies

Ejemplo de solicitud

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"
  }
}

Respuesta de Ejemplo

json
{
  "errorId": 0,
  "status": "inactivo",
  // registra el ID de la tarea
  "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Obtener Resultados

Utiliza el método getTaskResult para obtener los resultados de la resolución.

Dependiendo de la carga del sistema, obtendrás los resultados en el intervalo de 1 segundo a 20 segundos.

Ejemplo de Solicitud

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"
}

Respuesta de Ejemplo

json
{
  "errorId": 0,
  "errorCode": null,
  "errorDescription": null,
  "solution": {
    "token": "0.mF74FV8wEufAWOdvOak_xFaVy3lqIDel7SwNhw3GgpICSWwTjYfrQB8mRT1dAJJBEoP7N1sESdp6WH9cTS1T0catWLecG3ayNcjwxVtr3hWfS-dmcBGRTx4xYwI64sAVboYGpIyuDBeMIRC3W8dK35v1nDism9xa595Da5VlXKM7hk7pIXg69lodfiftasIkyD_KUGkxBwxvrmz7dBo10-Y5zvro9hD4QKRjOx7DYj9sumnkyYCDx0m4ImDIIkNswfVTWI2V22wlnpHdvMgdtKYgOIIAU28y9gtdrdDkpkH0GHcDyd15sxQGd9VjwhGZA_mpusUKMsEoGgst2rJ3zA.UWfZupqLlGvlATkPo3wdaw.38d55cd0163610d8ce8c42fcff7b62d8981495cc1afacbb2f14e5a23682a4e13",
    "type": "torno",
    "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": "listo"
}

Utilizar Solicitud 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() {
	// primero necesitas instalar el SDK
	//go get github.com/capsolver/capsolver-go
	//export CAPSOLVER_API_KEY='...' o
	//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": "0x4AAAAAAABS7vwv

V6VFfMcD",
	})
	if err != nil {
		log.Fatal(err)
		return
	}
	fmt.Println(solution)
}