Menu

Giải Turnstile captcha qua proxy

Turnstile captcha là một nỗ lực khác nhằm thay thế Recaptcha. Chúng tôi tự động hỗ trợ tất cả các loại con của Turnstile captcha: thủ công, không tương tác và ẩn. Không cần chỉ định loại con. Ngoài ra, việc cung cấp Tác nhân người dùng tùy chỉnh của riêng bạn là không cần thiết và sẽ không có hiệu quả.

Loại tác vụ này cần có proxy. Vui lòng chỉ sử dụng khi không thể thực hiện các tác vụ tắt proxy (TurnstileTaskProxyless) vì loại tác vị này sẽ làm chậm thao tác của nhân viên của chúng tôi. Việc giải captcha có proxy cũng đòi hỏi proxy của bạn có chất lượng cực cao. Bạn nên tự cài đặt proxy trên máy chủ VPS của riêng mình và không được sử dụng các dịch vụ proxy đã mua.

Turnstile captcha example
Ví dụ về captcha
Python
Node.js
Go
PHP
Java
C#
bash

Cách giải Cloudflare Turnstile proxy-on trong Python

#pip3 install anticaptchaofficial

from anticaptchaofficial.turnstileproxyon import *

solver = turnstileProxyon()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
solver.set_website_url("https://website.com/")
solver.set_website_key("sitekey_here")
solver.set_proxy_address("PROXY_ADDRESS")
solver.set_proxy_port(1234)
solver.set_proxy_login("proxylogin")
solver.set_proxy_password("proxypassword")

# Optionally specify page action
solver.set_action("login")

# Optionally specify cData and chlPageData tokens for Cloudflare pages
#solver.set_cdata("cdata_token")
#solver.set_chlpagedata("chlpagedata_token")

# Specify softId to earn 10% commission with your app.
# Get your softId here: https://anti-captcha.com/clients/tools/devcenter
solver.set_soft_id(0)

token = solver.solve_and_return_solution()
if token != 0:
    print("token: "+token)
    # user-agent in case you need it:
    print("user-agent: "+solver.get_user_agent())
else:
    print("task finished with error "+solver.error_code)

Cách giải Cloudflare Turnstile proxy-on trong Node.js

//npm install @antiadmin/anticaptchaofficial
//https://github.com/anti-captcha/anticaptcha-npm

const ac = require("@antiadmin/anticaptchaofficial");

ac.setAPIKey('YOUR_API_KEY_HERE');

//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
ac.setSoftId(0);

ac.solveTurnstileProxyOn('http://DOMAIN.COM',
    'WEBSITE_KEY',
    'http', //http, socks4, socks5
    'PROXY_ADDRESS',
    'PROXY_PORT',
    'PROXY_LOGIN',
    'PROXY_PASSWORD',
    'optional_action',
    'optional_cData_token',
    'optional_chlPageData_token')
    .then(token => {
        console.log('token: '+token);
    })
    .catch(error => console.log('test received error '+error));

// in case you need it
console.log("worker's user-agent:");
console.log(ac.getUserAgent());

Cách giải Cloudflare Turnstile proxy-on trong Go

// Install with:
// go get github.com/anti-captcha/anticaptcha-go
package main

import (
    "fmt"
    "github.com/anti-captcha/anticaptcha-go"
    "log"
)

func main() {
    // Create API client and set the API Key
    ac := anticaptcha.NewClient("API_KEY_HERE")

    // set to 'false' to turn off debug output
    ac.IsVerbose = true

    // Specify softId to earn 10% commission with your app.
    // Get your softId here: https://anti-captcha.com/clients/tools/devcenter
    //ac.SoftId = 1187

    // Make sure the API key funds balance is positive
    balance, err := ac.GetBalance()
    if err != nil {
        log.Fatal(err)
        // Exit program to make sure you don't DDoS API with requests, while having empty balance
        return
    }
    fmt.Println("Balance:", balance)

    // Solve Turnstile with proxy
    solution, err := ac.SolveTurnstileProxyOn(anticaptcha.Turnstile{
        WebsiteURL: "https://www.website.com/",
        WebsiteKey: "0x4AAAAAAABD2Inoxs-yJ8bz",
        //Action: "optional page action",
        //CData: "cdata token for cloudflare",
        //ChlPageData: "chlPageData token for cloudflare",
        Proxy: &anticaptcha.Proxy{
            Type:      "http",
            IPAddress: "1.2.3.4",
            Port:      1234,
            Login:     "login-optional",
            Password:  "pass-optional",
        },
    })
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println("Turnstile Token:", solution)
    // In case you need the worker's user-agent
    fmt.Println("User-Agent:", ac.WorkersUserAgent)
}

Cách giải Cloudflare Turnstile proxy-on trong PHP

//git clone https://github.com/anti-captcha/anticaptcha-php.git

include("anticaptcha.php");
include("turnstile.php");

$api = new Turnstile();
$api->setVerboseMode(true);

//your anti-captcha.com account key
$api->setKey("YOUR_API_KEY_HERE");

//target website address
$api->setWebsiteURL("https://website.com/");

//turnstile key from target website
$api->setWebsiteKey("0xAAAAAAAABBBBBBBCCCCCC");

//optional action parameter, search it in page source code
$api->setAction("login_register_or_else");

//optional cData and chlPageData token parameters for Cloudflare
//$api->setCData("token_value");
//$api->setChlPageData("token_value");

// proxy access parameters
// DO NOT USE PURCHASED/RENTED PROXIES ON PROXY SERVICES!!!
// THEY WILL NOT WORK!
// USE ONLY PROXIES YOU INSTALL YOURSELF ON YOUR OWN SERVER OR FAST VPS
// USE PROPER PROXY SOFTWARE LIKE SQUID !
// INSTALLATION INSTRUCTIONS:
// https://anti-captcha.com/apidoc/articles/how-to-install-squid
$api->setProxyType("http");
$api->setProxyAddress("8.8.8.8");
$api->setProxyPort(1234);
//optional login and password
$api->setProxyLogin("login");
$api->setProxyPassword("password");

//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
$api->setSoftId(0);

//create task in API
if (!$api->createTask()) {
    $api->debout("API v2 send failed - ".$api->getErrorMessage(), "red");
    return false;
}

$taskId = $api->getTaskId();

//wait in a loop for max 300 seconds till task is solved
if (!$api->waitForResult(300)) {
    echo "could not solve captcha\n";
    echo $api->getErrorMessage()."\n";
} else {

    $token    =   $api->getTaskSolution();
    echo "\n";
    echo "your turnstile token: $token\n\n";
    echo "worker's user-agent in case you need it:\n";
    echo $api->getWorkersUserAgent()."\n";

}

Cách giải Cloudflare Turnstile proxy-on trong Java

//git clone https://github.com/anti-captcha/anticaptcha-java.git

package com.anti_captcha;

import com.anti_captcha.Api.Turnstile;
import com.anti_captcha.Helper.DebugHelper;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.net.MalformedURLException;
import java.net.URL;
import java.util.Iterator;
import java.util.concurrent.ThreadLocalRandom;

public class Main {

    public static void main(String[] args) throws InterruptedException, MalformedURLException, JSONException {

        DebugHelper.setVerboseMode(true);

        Turnstile api = new Turnstile();
        api.setClientKey("API_KEY_HERE");
        api.setWebsiteUrl(new URL("http://website.com"));
        api.setWebsiteKey("sitekey_here");

        //Optional page action
        api.setAction("optional_page_action");

        //Optionally specify cData and chlPageData tokens for Cloudflare pages
        //api.setCData("cdata_token");
        //api.setChlPageData("chlPageData_token");

        // proxy access parameters
        // DO NOT USE PURCHASED/RENTED PROXIES WITH PROXY SERVICES!!!
        // THEY WILL NOT WORK!
        // USE ONLY PROXIES YOU INSTALL YOURSELF ON YOUR OWN SERVER OR FAST VPS
        // USE PROPER PROXY SOFTWARE LIKE SQUID !
        // INSTALLATION INSTRUCTIONS:
        // https://anti-captcha.com/apidoc/articles/how-to-install-squid
        api.setProxyType(NoCaptcha.ProxyTypeOption.HTTP);
        api.setProxyAddress("xx.xxx.xx.xx");
        api.setProxyPort(8282);
        api.setProxyLogin("login");
        api.setProxyPassword("password");

        //Specify softId to earn 10% commission with your app.
        //Get your softId here: https://anti-captcha.com/clients/tools/devcenter
        api.setSoftId(0);

        if (!api.createTask()) {
            DebugHelper.out(
                    "API v2 send failed. " + api.getErrorMessage(),
                    DebugHelper.Type.ERROR
            );
        } else if (!api.waitForResult()) {
            DebugHelper.out("Could not solve the captcha.", DebugHelper.Type.ERROR);
        } else {
            DebugHelper.out("Result: " + api.getTaskSolution().getToken(), DebugHelper.Type.SUCCESS);
        }
    }
}

Cách giải Cloudflare Turnstile proxy-on trong C#

//git clone https://github.com/anti-captcha/anticaptcha-csharp.git

using System;
using Anticaptcha_example.Api;
using Anticaptcha_example.Helper;
using Newtonsoft.Json.Linq;

namespace Anticaptcha_example
{
    internal class Program
    {
        private static void Main() {

            DebugHelper.VerboseMode = true;

            var api = new Turnstile
            {
                ClientKey = "YOUR_API_KEY_HERE",
                WebsiteUrl = new Uri("http://website.com"),
                WebsiteKey = "sitekey",
                // Optional page action
                Action = "optional_page_action",
                // Optionally specify cData and chlPageData tokens for Cloudflare pages
                // CData = "cdata_token",
                // ChlPageData = "chlPageData_token",
                ProxyAddress = "xxx.xx.xx.xx",
                ProxyPort = 1234,
                ProxyLogin = "login",
                ProxyPassword = "password",
                // Specify softId to earn 10% commission with your app.
                // Get your softId here:
                // https://anti-captcha.com/clients/tools/devcenter
                SoftId = 0
            };

            if (!api.CreateTask())
                DebugHelper.Out("API v2 send failed. " + api.ErrorMessage, DebugHelper.Type.Error);
            else if (!api.WaitForResult())
                DebugHelper.Out("Could not solve the captcha.", DebugHelper.Type.Error);
            else
                DebugHelper.Out("Result: " + api.GetTaskSolution().token, DebugHelper.Type.Success);

        }
    }
}

Cách giải Cloudflare Turnstile proxy-on trong bash

curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY_HERE",
    "task":
        {
            "type":"TurnstileTask",
            "websiteURL":"https://website.com/",
            "websiteKey":"0xAAAAAAAABBBBBBBCCCCCC",
            "action":"optional_page_action",,
            "cData":"optional_cData_token_for_cloudflare",
            "chlPageData":"optional_cData_token_for_cloudflare",
            "proxyType":"http",
            "proxyAddress":"8.8.8.8",
            "proxyPort":8080,
            "proxyLogin":"proxyLoginHere",
            "proxyPassword":"proxyPasswordHere"
        },
    "softId": 0
}' https://api.anti-captcha.com/createTask

Đối tượng tác vụ

Thuộc tính Loại Bắt buộc Mục đích
type Chuỗi TurnstileTask
websiteURL Chuỗi Địa chỉ trang web đích. Có thể ở bất kỳ đâu trên trang web, ngay cả trong khu vực thành viên. Nhân viên của chúng tôi không điều hướng đến khu vực đó mà chỉ giả lập truy cập.
websiteKey Chuỗi Khóa trang web Turnstile
action Chuỗi Không Tham số "hành động" tùy chọn.
cData Chuỗi Không Mã thông báo "cData" tùy chọn
Bài viết liên quan: Cách vượt qua Cloudflare
chlPageData Chuỗi Không Mã thông báo "Chlpagedata" tùy chọn
proxyType Chuỗi Loại proxy
http - proxy http/https thông thường
socks4 - socks4 proxy
socks5 - socks5 proxy
proxyAddress Chuỗi Địa chỉ IP Proxy ipv4/ipv6. Không có tên máy chủ hoặc địa chỉ IP từ mạng cục bộ.
proxyPort Số nguyên Cổng proxy
proxyLogin Chuỗi Thông tin đăng nhập cho proxy cần được xác minh (cơ bản)
proxyPassword Chuỗi Mật khẩu proxy

Đối tượng giải của tác vụ

Thuộc tính Loại Mục đích
token Chuỗi Cần có chuỗi mã thông báo để tương tác với biểu mẫu được gửi trên trang web đích.
userAgent Chuỗi Tác nhân người dùng trong trình duyệt của nhân viên. Sử dụng khi bạn gửi mã thông báo phản hồi.

Ví dụ về phản hồi

{
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "token":"0.vtJqmZnvobaUzK2i2PyKaSqHELYtBZfRoPwMvLMdA81WL_9G0vCO3y2VQVIeVplG0mxYF7uX.......",
        "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0"
    },
    "cost":"0.001500",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}