CAPSOLVER
Blog
Cách giải Cloudflare Turnstile bằng CapSolver và n8n: Tự xây dựng API giải Captcha và lấy dữ liệu từ trang web

Cách giải quyết Cloudflare Turnstile bằng CapSolver và n8n

Logo of CapSolver

Anh Tuan

Data Science Expert

10-Mar-2026

Cloudflare Turnstile đang trở thành lựa chọn CAPTCHA thay thế cho các trang web hiện đại. Khác với các CAPTCHA truyền thống buộc người dùng phải giải các câu đố hình ảnh, Turnstile chạy âm thầm ở nền — khiến nó khó bị phát hiện và vượt qua bằng các công cụ tự động thông thường.

Nhưng nếu bạn có thể xây dựng API giải Turnstile riêng của mình — một API nhận yêu cầu và trả về token hợp lệ, mà không cần viết một dòng mã truyền thống nào?

Trong hướng dẫn này, bạn sẽ học cách kết hợp n8n (công cụ tự động hóa quy trình trực quan) với CapSolver (dịch vụ giải CAPTCHA được AI hỗ trợ) để tạo một điểm cuối API mạnh mẽ giải các thách thức Cloudflare Turnstile theo yêu cầu.

Bạn sẽ xây dựng:

  • Một API giải thách thức Turnstile của Cloudflare
  • Một ví dụ quét web giải Turnstile, gửi token đến trang web và trích xuất dữ liệu được bảo vệ

Cloudflare Turnstile là gì?

Cloudflare Turnstile là một giải pháp CAPTCHA thông minh được thiết kế để xác minh người dùng mà không gây khó chịu như các thách thức truyền thống. Thay vì yêu cầu người dùng nhấp vào hộp kiểm hoặc xác định các vật thể trong hình ảnh, Turnstile xác minh khách truy cập tự động bằng các tín hiệu trình duyệt và phân tích hành vi.

Tính năng Cloudflare Turnstile
Tương tác người dùng Không có — chạy tự động ở nền
Cách hoạt động Sử dụng các thách thức trình duyệt và tín hiệu hành vi để xác minh người truy cập
Tính hiển thị Hiển thị một widget nhỏ, nhưng không có câu đố để giải
Chế độ widget Quản lý, Không tương tác, Bị ẩn
Trường hợp sử dụng phổ biến Trang đăng nhập, đăng ký, trang thanh toán, bất kỳ trang nào được bảo vệ bởi Cloudflare
Mã trang có hiển thị không?

Chế độ widget

Turnstile cung cấp ba chế độ widget mà các trang web có thể chọn:

Chế độ Mô tả
Quản lý Cloudflare quyết định xem có hiển thị thách thức tương tác hay xác minh âm thầm
Không tương tác Không bao giờ hiển thị thách thức — luôn xác minh ở nền
Bị ẩn Hoàn toàn bị ẩn — không có widget nào được hiển thị trên trang

Từ góc độ giải quyết, chế độ không thay đổi cách bạn cấu hình CapSolver — bạn luôn cần các tham số giống nhau: websiteURLwebsiteKey.

Turnstile so với Cloudflare Challenge (Không giống nhau)

Đừng nhầm lẫn Turnstile với Cloudflare Challenge toàn trang — cái mà hiển thị "Thực hiện kiểm tra bảo mật" với thanh loading trước khi cho phép bạn truy cập trang. Đó là một Cloudflare Challenge (còn được gọi là JS challenge hoặc managed challenge), không phải Turnstile.

Cloudflare Turnstile Cloudflare Challenge
Nơi xuất hiện Được nhúng bên trong trang (ví dụ: trong trang đăng nhập) Trang đầy đủ trước khi bạn có thể truy cập trang
Giao diện Một widget nhỏ trên trang "Thực hiện kiểm tra bảo mật..." với thanh loading
Cách triển khai Chủ trang web thêm nó vào biểu mẫu của họ Cloudflare tự động thêm nó dựa trên quy tắc bảo mật
Phương pháp giải Sử dụng thao tác Turnstile của CapSolver (hướng dẫn này) Khác — yêu cầu trình giải Cloudflare Challenge

Nếu bạn thấy màn hình "Thực hiện kiểm tra bảo mật" toàn trang, đó không phải là Turnstile — đó là Cloudflare Challenge và yêu cầu phương pháp khác. Xem những khác biệt chính


Yêu cầu tiên quyết

Trước khi bắt đầu, hãy đảm bảo bạn có những điều sau:

  1. Một phiên bản n8n — Hoặc tự host hoặc n8n Cloud
  2. Tài khoản CapSolverĐăng ký tại đây và lấy khóa API của bạn
  3. Nút CapSolver cho n8n — Đã có sẵn như một nút chính thức trong n8n (không cần cài đặt)

Lưu ý: Đảm bảo tài khoản CapSolver của bạn có đủ số dư. Các nhiệm vụ giải Turnstile sẽ tiêu hao tín dụng dựa trên việc sử dụng.


Thiết lập CapSolver trong n8n

CapSolver có sẵn như một tích hợp chính thức trong n8n — không cần cài đặt nút cộng đồng. Bạn có thể tìm thấy nó trực tiếp trong bảng nút khi xây dựng quy trình làm việc của mình.

Vì đây là tích hợp chính thức, bạn cần tạo một chứng chỉ trong n8n để nút CapSolver có thể xác thực với tài khoản của bạn.

Bước 1: Mở trang Chứng chỉ

Đi đến phiên bản n8n của bạn và điều hướng đến Cài đặtChứng chỉ. Bạn sẽ thấy tất cả các chứng chỉ được cấu hình ở đây.

Trang chứng chỉ n8n hiển thị tài khoản CapSolver

Bước 2: Tạo Chứng chỉ CapSolver

  1. Nhấp vào Tạo chứng chỉ (góc trên bên phải)
  2. Tìm kiếm "CapSolver" và chọn CapSolver API
  3. Nhập khóa API của bạn — sao chép trực tiếp từ Bảng điều khiển CapSolver
  4. Để Các miền HTTP được phép ở chế độ Tất cả (mặc định)
  5. Nhấp vào Lưu

n8n sẽ tự động kiểm tra kết nối. Bạn nên thấy thông báo "Kết nối thành công" màu xanh xác nhận khóa API của bạn hợp lệ.

Cấu hình chứng chỉ CapSolver với kiểm tra kết nối thành công

Lưu ý: Tất cả các nút CapSolver trong quy trình làm việc của bạn sẽ tham chiếu đến chứng chỉ này. Bạn chỉ cần tạo nó một lần — tất cả các quy trình giải của bạn sẽ chia sẻ cùng một chứng chỉ.

Bây giờ bạn đã sẵn sàng để xây dựng quy trình giải Turnstile của mình!


Cách Xác định Tham số Turnstile

Trước khi giải một thách thức Turnstile, bạn cần biết các tham số của nó — cụ thể là websiteURLwebsiteKey (còn được gọi là khóa trang).

Turnstile chỉ cần hai tham số, vì vậy việc tìm chúng rất đơn giản:

URL Trang Web

Đây là URL đầy đủ của trang có widget Turnstile. Sao chép từ thanh địa chỉ trình duyệt của bạn.

Khóa Trang (Site Key)

Khóa trang được nhúng trong HTML của trang. Dưới đây là một số cách để tìm nó:

1. Tìm trong mã nguồn trang cho data-sitekey

Nhấp chuột phải trên trang → Xem mã nguồn trang (hoặc nhấn Ctrl+U) và tìm data-sitekey:

html Copy
<div class="cf-turnstile" data-sitekey="0x4AAAAAAADV8V8V8V8V8V8V"></div>

2. Tìm turnstile.render() trong JavaScript

Một số trang hiển thị Turnstile qua JavaScript thay vì thuộc tính HTML. Tìm trong mã nguồn trang cho turnstile.render:

javascript Copy
turnstile.render('#widget', {
  sitekey: '0x4AAAAAAADV8V8V8V8V8V8V',
});

3. Kiểm tra tab Mạng trong DevTools

Mở DevTools (F12) → tab Mạng → lọc bằng turnstile hoặc challenges.cloudflare.com. Khóa trang thường xuất hiện trong URL yêu cầu hoặc dữ liệu phản hồi.

4. Tìm challenges.cloudflare.com trong HTML

Turnstile tải script của nó từ Cloudflare. Tìm trong mã nguồn trang cho tên miền này — khóa trang thường ở gần đó:

html Copy
<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>

Lưu ý:

  • Khóa trang luôn bắt đầu bằng 0x và là chuỗi ký tự dài
  • Nếu trang sử dụng Cloudflare's managed challenge (thách thức toàn trang trước khi truy cập trang), widget Turnstile có thể không có trong mã nguồn trang — nó được cung cấp bởi trang challenge của Cloudflare thay vào đó

Quy trình: API Giải Thách Thức Cloudflare Turnstile

Quy trình này tạo ra một điểm cuối API POST nhận tham số Turnstile và trả về token đã giải.

Cloudflare Turnstile

Hoạt động như thế nào

Quy trình gồm ba nút:

  1. Webhook — Nhận các yêu cầu POST đến với tham số Turnstile
  2. Cloudflare Turnstile — Gửi thách thức đến CapSolver và chờ đợi giải pháp
  3. Trả lời Webhook — Trả về giải pháp dưới dạng phản hồi JSON

Cấu hình Nút

1. Nút Webhook

Thiết lập Giá trị
Phương thức HTTP POST
Đường dẫn solver-turnstile
Chế độ Trả lời Node Trả lời

Điều này tạo ra một điểm cuối tại: https://your-n8n-instance.com/webhook/solver-turnstile

2. Nút Cloudflare Turnstile của CapSolver

Tham số Giá trị Mô tả
Hoạt động Cloudflare Turnstile Phải được đặt thành Cloudflare Turnstile
Loại AntiTurnstileTaskProxyLess Loại nhiệm vụ này không yêu cầu proxy
URL Trang Web {{ $json.body.websiteURL }} URL của trang có widget Turnstile
Khóa Trang {{ $json.body.websiteKey }} Khóa trang Turnstile
metadata.action (Tùy chọn) Một số trang yêu cầu chuỗi hành động cụ thể cho thách thức Turnstile
metadata.cdata (Tùy chọn) Dữ liệu tùy chỉnh mà một số trang truyền đến widget Turnstile để xác minh

Một số trang cũng yêu cầu metadata.action và/hoặc metadata.cdata — bạn có thể thêm chúng trong phần Tùy chọn của nút. Chọn cả chứng chỉ CapSolver của bạn trong nút này.

3. Nút Trả lời Webhook

Thiết lập Giá trị
Trả lời Bằng JSON
Nội dung Trả lời {{ JSON.stringify($json.data) }}

Điều này trả về phản hồi đầy đủ của CapSolver, bao gồm token Turnstile đã giải.

Kiểm tra

Gửi yêu cầu POST đến điểm cuối webhook của bạn:

bash Copy
curl -X POST https://your-n8n-instance.com/webhook/solver-turnstile \
  -H "Content-Type: application/json" \
  -d '{
    "websiteURL": "https://example.com/login",
    "websiteKey": "0x4AAAAAAADV8V8V8V8V8V8V"
  }'

Phản hồi Dự kiến:

json Copy
{
  "taskId": "abc123...",
  "solution": {
    "token": "0.XXXXXXXXXXXXXXXX..."
  },
  "status": "ready"
}

Nhập Quy trình Này

Sao chép JSON dưới đây và nhập vào n8n qua MenuNhập từ JSON:

Nhấp để mở rộng JSON quy trình
json Copy
{
  "name": "Turnstile solver",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "solver-turnstile",
        "responseMode": "responseNode",
        "options": {}
      },
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [-208, 0],
      "id": "137be4f0-1762-4f0c-b993-c512d27e35de",
      "name": "Webhook",
      "webhookId": "3d32ad61-d925-4a09-8fe5-7226e6664a98"
    },
    {
      "parameters": {
        "operation": "Cloudflare Turnstile",
        "websiteURL": "={{ $json.body.websiteURL }}",
        "websiteKey": "={{ $json.body.websiteKey }}",
        "optional": {}
      },
      "type": "n8n-nodes-capsolver.capSolver",
      "typeVersion": 1,
      "position": [192, 80],
      "id": "954ff1f0-d5de-4468-b0d1-fbce03676676",
      "name": "Cloudflare Turnstile",
      "credentials": {
        "capSolverApi": {
          "id": "sLg2YDZd7WtYJJJ4",
          "name": "CapSolver account"
        }
      }
    },
    {
      "parameters": {
        "options": {}
      },
      "type": "n8n-nodes-base.respondToWebhook",
      "typeVersion": 1.1,
      "position": [400, 0],
      "id": "db264e2b-48ce-4887-9b2b-2b8077993c30",
      "name": "Respond to Webhook"
    }
  ],
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "Cloudflare Turnstile",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Cloudflare Turnstile": {
      "main": [
        [
          {
            "node": "Respond to Webhook",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": true,
  "settings": {
    "executionOrder": "v1"
  }
}

Tham chiếu Tham số API

Điểm cuối API giải Turnstile chấp nhận các tham số sau:

Tham số Bắt buộc Mô tả
websiteURL URL của trang chứa widget Turnstile
websiteKey Khóa trang Turnstile
metadata.action Không Chuỗi hành động được yêu cầu bởi một số trang cho thách thức Turnstile
metadata.cdata Không Dữ liệu tùy chỉnh được truyền đến widget Turnstile bởi một số trang

Lưu ý: Bạn có thể xác định websiteURLwebsiteKey bằng cách kiểm tra mã nguồn trang — xem Cách Xác định Tham số Turnstile.

So với reCAPTCHA, Turnstile đơn giản hơn — bạn chỉ cần hai tham số bắt buộc. Một số trang có thể yêu cầu các trường tùy chọn metadata.action hoặc metadata.cdata — thêm chúng vào phần Tùy chọn của nút nếu token không được chấp nhận.


Ví dụ Thực Tế: Gửi Token Turnstile Đến Trang Web

Quy trình API trên cho thấy cách nhận token Turnstile đã giải. Nhưng bạn thực sự làm gì với nó?

Trong tự động hóa thực tế, giải quyết thách thức chỉ là một nửa công việc. Bạn cần gửi token đến trang đích — giống như trình duyệt sẽ làm — để mở khóa dữ liệu hoặc hành động đằng sau bảo vệ Turnstile.

Đây là mô hình chung:

  1. Giải thách thức → Nhận token từ CapSolver
  2. Gửi token → Gửi nó đến trang đích qua yêu cầu HTTP (thường là trường cf-turnstile-response)
  3. Kiểm tra phản hồi → Kiểm tra xem trang web có chấp nhận token hay không
  4. Xử lý kết quả → Trích xuất dữ liệu bạn cần

Ví dụ: Giải và Gửi Turnstile

Ví dụ: https://example.com/ — Một trang web được bảo vệ bởi Turnstile

Luồng Quy trình

Copy
Kích hoạt Thủ công → CapSolver Turnstile → Yêu cầu HTTP POST → IF (kiểm tra thành công) → Chỉnh sửa Trường (trích xuất dữ liệu)

Hoạt động như thế nào

  1. Kích hoạt Thủ công — Bắt đầu quy trình thủ công (nhấp vào "Thực hiện quy trình"). Bạn có thể thay thế điều này bằng bất kỳ kích hoạt nào — Webhook, Lịch, Sự kiện Ứng dụng, v.v.
  2. CapSolver Cloudflare Turnstile — Giải thách thức Turnstile:
    • Hoạt động: Cloudflare Turnstile
    • URL Trang Web: https://example.com/login
    • Khóa Trang: 0x4AAAAAAA... (tìm bằng cách kiểm tra mã nguồn trang — xem Cách Xác định Tham số Turnstile
  3. Yêu cầu HTTP POST — Gửi token đã giải đến trang đích:
    • Token được gửi trong trường cf-turnstile-response của biểu mẫu
    • Bao gồm bất kỳ trường biểu mẫu nào mà trang kỳ vọng (ví dụ: username, password)
    • Đây là điều mà trình duyệt làm khi bạn gửi biểu mẫu sau khi Turnstile xác minh bạn
  4. Nút IF — Kiểm tra xem phản hồi có chỉ ra thành công hay không (ví dụ: chuyển hướng, thông báo thành công, hoặc các trường JSON cụ thể)
  5. Chỉnh sửa trường dữ liệu — Trích xuất dữ liệu bạn cần từ phản hồi. Trong tình huống thực tế, đây là nơi bạn phân tích HTML bằng nút HTML để trích xuất các phần tử cụ thể (ví dụ: dữ liệu người dùng, danh sách sản phẩm, nội dung bảng điều khiển) và ánh xạ chúng vào các trường đầu ra của bạn.

Khái niệm quan trọng: Mỗi trang web xử lý việc gửi token khác nhau. Trong ví dụ này, token được gửi qua trường cf-turnstile-response bằng phương thức POST — nhưng các trang web khác có thể yêu cầu nó ở tên trường khác, dưới dạng dữ liệu JSON, trong tiêu đề, hoặc thông qua một điểm cuối hoàn toàn khác. Luôn kiểm tra việc gửi biểu mẫu thực tế của trang web (bằng tab Mạng trong DevTools) để xem chính xác cách token cần được gửi.

Áp dụng Mẫu này cho Bất kỳ Trang Web Bảo vệ bằng Turnstile nào

  1. Xác định tham số Turnstile — Tìm websiteURLwebsiteKey bằng cách kiểm tra mã nguồn trang web
  2. Kiểm tra việc gửi biểu mẫu — Sử dụng tab Mạng trong DevTools của trình duyệt để xem yêu cầu nào được gửi khi biểu mẫu được gửi (URL, phương thức, tiêu đề, trường dữ liệu)
  3. Lặp lại yêu cầu trong n8n — Cấu hình nút Yêu cầu HTTP để khớp chính xác với việc gửi biểu mẫu, chèn token đã giải vào trường đúng (thường là cf-turnstile-response, nhưng hãy kiểm tra biểu mẫu thực tế)
  4. Thêm kiểm tra xác thực — Sử dụng nút IF để kiểm tra phản hồi và xác nhận dữ liệu đã được mở khóa
  5. Trích xuất dữ liệu — Khi trang web chấp nhận token, phân tích phản hồi để trích xuất dữ liệu bạn cần. Sử dụng nút HTML cho phản hồi HTML hoặc Chỉnh sửa trường dữ liệu cho phản hồi JSON

Lưu ý: Ví dụ này sử dụng Trigger thủ công để đơn giản, nhưng bạn có thể thay thế bằng bất kỳ nút Trigger nào — Webhook (để xây dựng API), Lịch (để chạy mỗi giờ), Sự kiện ứng dụng (để phản ứng với tin nhắn Telegram), hoặc bất kỳ nút nào khác. Xem Cách kích hoạt quy trình làm việc của bạn để xem tất cả các tùy chọn.


Các cách để kích hoạt quy trình làm việc của bạn

Các ví dụ trong hướng dẫn này sử dụng Trigger thủ công (đối với quy trình quét) và Webhook (đối với quy trình API), nhưng n8n cung cấp nhiều cách khác để bắt đầu một quy trình làm việc. Bạn có thể thay thế nút Trigger để phù hợp với nhu cầu của mình:

Trigger Mô tả Phù hợp nhất với
Kích hoạt thủ công Nhấn "Thực thi quy trình làm việc" trong n8n Kiểm tra và chạy một lần
Theo lịch Chạy mỗi ngày, mỗi giờ hoặc khoảng thời gian tùy chỉnh (cron) Các công việc quét định kỳ (ví dụ: kiểm tra một trang web mỗi giờ)
Khi có yêu cầu Webhook Chạy khi nhận được yêu cầu HTTP Xây dựng API mà các dịch vụ khác có thể gọi
Khi có sự kiện ứng dụng Chạy khi có điều gì đó xảy ra trong Telegram, Notion, Airtable, v.v. Phản ứng với các sự kiện (ví dụ: tin nhắn Telegram mới kích hoạt giải quyết)
Khi gửi biểu mẫu Tạo biểu mẫu web trong n8n và truyền phản hồi đến quy trình làm việc Cho phép người dùng gửi tham số Captcha qua biểu mẫu
Khi được thực thi bởi quy trình làm việc khác Được gọi bởi nút Execute Workflow từ quy trình làm việc khác Kiến trúc mô-đun — giữ giải pháp của bạn như một quy trình con có thể tái sử dụng
Khi có tin nhắn trò chuyện Chạy khi người dùng gửi tin nhắn trò chuyện (nút AI) Tích hợp chatbot cần giải quyết thách thức theo yêu cầu
Các cách khác Lỗi quy trình làm việc, thay đổi tệp, v.v. Kích hoạt tự động nâng cao

Ví dụ, để chạy quy trình quét của bạn mỗi giờ, chỉ cần thay thế Trigger thủ công bằng nút Trigger theo lịch và đặt khoảng thời gian là 1 giờ. Phần còn lại của quy trình làm việc vẫn giữ nguyên.


Lưu trữ và xuất dữ liệu đã quét

Sau khi quy trình làm việc giải quyết thử thách Turnstile và truy xuất dữ liệu từ trang web đích, bạn sẽ muốn lưu trữ hoặc xuất dữ liệu đó. n8n cung cấp các nút chuyển đổi dữ liệu và đầu ra tích hợp cho mục đích này.

Chuyển đổi dữ liệu

Trước khi lưu, bạn có thể chuyển đổi dữ liệu đã quét bằng các nút tích hợp của n8n:

Nút Mô tả
Ghép Kết hợp dữ liệu từ nhiều nguồn
Tóm tắt Tổng hợp, đếm, giá trị lớn nhất, v.v. trên các mục
Chuyển đổi thành tệp Chuyển đổi dữ liệu JSON thành định dạng nhị phân như CSV, Excel
Trích xuất từ tệp Chuyển đổi dữ liệu nhị phân thành JSON
HTML Phân tích và trích xuất dữ liệu từ phản hồi HTML
XML Chuyển đổi giữa JSON và XML
Đổi tên trường Đổi tên trường để phù hợp với định dạng đầu ra mong muốn
Sắp xếp Sắp xếp các mục trước khi xuất

Các điểm đầu ra

Sau khi nút IF xác minh phản hồi, bạn có thể thêm bất kỳ nút nào trong số các nút sau để lưu dữ liệu:

Điểm đầu ra Cách thực hiện
Google Sheets Thêm hàng vào bảng tính — lý tưởng để theo dõi kết quả theo thời gian
Tệp Excel / CSV Sử dụng nút Chuyển đổi thành tệp để tạo tệp .xlsx hoặc .csv, sau đó lưu bằng nút Ghi tệp nhị phân hoặc tải lên Google Drive
Cơ sở dữ liệu (MySQL, PostgreSQL, MongoDB) Chèn trực tiếp vào bảng cơ sở dữ liệu để lưu trữ có cấu trúc
Airtable / Notion Gửi dữ liệu đến các công cụ quản lý dự án của bạn
Google Drive / S3 Tải lên tệp đến lưu trữ đám mây
Telegram / Slack / Email Gửi thông báo với dữ liệu đã quét
Tệp JSON cục bộ Ghi kết quả vào tệp .json trên đĩa

Lời khuyên: Bạn có thể kết hợp nhiều đầu ra — ví dụ, lưu vào Google Sheets gửi thông báo Telegram cùng lúc bằng cách kết nối cả hai nút với đầu ra "đúng" của nút IF.


Xử lý sự cố

"ERROR_KEY_DOES_NOT_EXIST" hoặc API key không hợp lệ

Triệu chứng Nút CapSolver thất bại với lỗi API key
Nguyên nhân API key của bạn sai hoặc chưa được cấu hình
Giải pháp Kiểm tra lại API key của bạn trong Cài đặt → Chứng chỉ. Sao chép nó trực tiếp từ Bảng điều khiển CapSolver

"ERROR_ZERO_BALANCE"

Triệu chứng Tạo nhiệm vụ thất bại với lỗi số dư
Nguyên nhân Tài khoản CapSolver của bạn không còn tín dụng
Giải pháp Nạp tiền vào tài khoản tại Bảng điều khiển CapSolver

Token sai hoặc hết hạn

Triệu chứng Token trả về bị trang web đích từ chối
Nguyên nhân Token Turnstile hết hạn sau một khoảng thời gian ngắn
Giải pháp Sử dụng token ngay lập tức sau khi nhận được

Token không được trang web chấp nhận

Triệu chứng CapSolver trả về token thành công, nhưng trang web đích vẫn từ chối nó
Nguyên nhân Một số trang web có các bảo vệ bổ sung ngoài Turnstile, hoặc yêu cầu các tham số cụ thể không được bao gồm
Giải pháp Kiểm tra lại xem bạn có gửi token chính xác như trang web mong đợi (tên trường đúng, phương thức và điểm cuối). Đảm bảo bạn đang sử dụng khóa trang đúng. Nếu token vẫn không được chấp nhận, liên hệ đội ngũ hỗ trợ CapSolver để được hỗ trợ — họ có thể giúp chẩn đoán các vấn đề liên quan đến trang web cụ thể

Hết thời gian hoặc phản hồi chậm

Triệu chứng Webhook mất quá nhiều thời gian hoặc hết thời gian
Nguyên nhân Giải quyết Captcha có thể mất vài giây tùy thuộc vào tải
Giải pháp Tăng thời gian chờ webhooks trong cài đặt n8n. Xem xét thêm logic thử lại cho các trường hợp sản xuất

Các nguyên tắc tốt nhất

  1. Sử dụng token ngay lập tức — Token Turnstile hết hạn nhanh. Gửi token đến trang web đích ngay khi bạn nhận được từ API giải quyết của mình.

  2. Xác minh tham số trước khi cấu hình — Luôn xác nhận khóa websiteKey đúng bằng cách kiểm tra mã nguồn trang web trước khi cấu hình quy trình làm việc của bạn.

  3. Giữ API key an toàn — Không bao giờ tiết lộ API key CapSolver trong mã phía khách. Các quy trình làm việc n8n giữ khóa của bạn ở phía máy chủ, đây là cách được khuyến khích.

  4. Theo dõi số dư của bạn — Thiết lập thông báo số dư trong bảng điều khiển CapSolver để tránh các lần thất bại quy trình làm việc do thiếu tín dụng.

  5. Thêm xử lý lỗi — Đối với các quy trình làm việc sản xuất, thêm nút IF sau nút CapSolver để kiểm tra lỗi và xử lý chúng một cách trơn tru (ví dụ: thử lại, thông báo hoặc ghi lại lỗi).


Kết luận

Bạn đã học cách xây dựng một API giải quyết Turnstile của Cloudflaremẫu quy trình quét bằng n8n và CapSolver — không cần lập trình truyền thống.

Trong hướng dẫn này, chúng tôi đã đề cập đến:

  • Điểm cuối giải quyết API cho Cloudflare Turnstile sử dụng quy trình dựa trên webhooks
  • Mẫu quét thực tế cho thấy cách gửi token đã giải quyết đến các trang web đích và trích xuất dữ liệu được bảo vệ
  • Cách xác định tham số Turnstile bằng cách kiểm tra mã nguồn trang web
  • Các nguyên tắc tốt nhất về xử lý token, quản lý lỗi và sử dụng trong sản xuất

Thông điệp chính là: giải quyết thử thách Turnstile chỉ là một nửa công việc — bạn cũng cần gửi token đến trang web đích để mở khóa dữ liệu được bảo vệ.


Sẵn sàng bắt đầu chưa? Đăng ký CapSolver và sử dụng mã thưởng n8n để nhận thêm 8% thưởng cho lần nạp đầu tiên!

Banner mã thưởng CapSolver


Câu hỏi thường gặp

Cloudflare Turnstile là gì?

Cloudflare Turnstile là một sự thay thế cho CAPTCHA, xác minh người dùng mà không yêu cầu họ giải các câu đố. Nó chạy ở nền bằng các tín hiệu trình duyệt và phân tích hành vi để xác định xem người dùng có phải là người thật hay không.

CapSolver hỗ trợ loại CAPTCHA nào trong n8n?

Nút CapSolver của n8n hỗ trợ Cloudflare Turnstile, reCAPTCHA v2, reCAPTCHA v2 ẩn, reCAPTCHA v3 và nhiều hơn nữa. Xem trang tích hợp CapSolver của n8n để xem danh sách đầy đủ.

Chi phí giải quyết thử thách Turnstile là bao nhiêu?

Giá cả thay đổi tùy theo nhu cầu sử dụng. Xem trang giá của CapSolver để xem mức giá hiện tại cho Turnstile.

Thời gian giải quyết thử thách Turnstile là bao lâu?

Thử thách Turnstile thường được giải quyết trong vài giây vì không có các thử thách hình ảnh liên quan.

Tôi có thể sử dụng quy trình này với n8n Cloud không?

Có! Quy trình này hoạt động với cả n8n tự host và n8n Cloud. Nút CapSolver đã có sẵn như một tích hợp chính thức — chỉ cần thêm chứng chỉ API của bạn.

Làm thế nào để tìm khóa trang Turnstile cho một trang web?

Tìm kiếm mã nguồn trang web cho data-sitekey trong HTML hoặc xem turnstile.render() trong JavaScript. Bạn cũng có thể mở DevTools (F12) → tab Mạng và lọc bằng turnstile để tìm khóa trang trong các yêu cầu. Xem Cách xác định tham số Turnstile để hướng dẫn chi tiết.

Sự khác biệt giữa Turnstile và reCAPTCHA là gì?

Turnstile là sự thay thế CAPTCHA của Cloudflare tập trung vào quyền riêng tư và trải nghiệm người dùng — hiếm khi hiển thị các thử thách hiển thị. reCAPTCHA là hệ thống phát hiện bot của Google có thể yêu cầu người dùng giải các câu đố hình ảnh (v2) hoặc gán điểm hành vi (v3). Cả hai đều có thể được giải bằng CapSolver trong n8n.

Điều gì xảy ra nếu CapSolver không thể giải quyết thử thách Turnstile?

Nút CapSolver sẽ trả về lỗi. Đối với các quy trình làm việc sản xuất, được khuyến khích thêm xử lý lỗi (ví dụ: nút IF để kiểm tra lỗi và cơ chế thử lại hoặc thông báo).

Tuyên bố Tuân thủ: Thông tin được cung cấp trên blog này chỉ mang tính chất tham khảo. CapSolver cam kết tuân thủ tất cả các luật và quy định hiện hành. Việc sử dụng mạng lưới CapSolver cho các hoạt động bất hợp pháp, gian lận hoặc lạm dụng là hoàn toàn bị cấm và sẽ bị điều tra. Các giải pháp giải captcha của chúng tôi nâng cao trải nghiệm người dùng trong khi đảm bảo tuân thủ 100% trong việc giúp giải quyết các khó khăn về captcha trong quá trình thu thập dữ liệu công khai. Chúng tôi khuyến khích việc sử dụng dịch vụ của chúng tôi một cách có trách nhiệm. Để biết thêm thông tin, vui lòng truy cập Điều khoản Dịch vụ và Chính sách Quyền riêng tư.

Thêm

Giải quyết Cloudflare Turnstile bằng cách sử dụng CapSolver và n8n
Cách giải quyết Cloudflare Turnstile bằng CapSolver và n8n

Xây dựng API giải mã Cloudflare Turnstile bằng CapSolver và n8n. Học cách tự động hóa việc giải token, gửi nó đến các trang web và trích xuất dữ liệu được bảo vệ mà không cần lập trình.

web scraping
Logo of CapSolver

Anh Tuan

10-Mar-2026

Giải Captcha trong Nanobot bằng CapSolver
Cách giải CAPTCHA trên Nanobot bằng CapSolver

Tự động hóa việc giải CAPTCHA với Nanobot và CapSolver. Sử dụng Playwright để giải reCAPTCHA và Cloudflare tự động.

web scraping
Logo of CapSolver

Anh Tuan

26-Feb-2026

Dịch vụ dữ liệu (DaaS): Nó là gì và tại sao nó quan trọng vào năm 2026
Dữ liệu dưới dạng dịch vụ (DaaS): Nó là gì và tại sao nó quan trọng vào năm 2026

Hiểu về Dịch vụ Dữ liệu (DaaS) vào năm 2026. Khám phá lợi ích, trường hợp sử dụng và cách nó thay đổi doanh nghiệp với phân tích thời gian thực và tính mở rộng.

web scraping
Logo of CapSolver

Emma Foster

12-Feb-2026

Cách sửa lỗi gỡ mã web phổ biến vào năm 2026
Cách sửa các lỗi thu thập dữ liệu web phổ biến vào năm 2026

Nắm vững việc sửa chữa các lỗi trình gỡ mã web đa dạng như 400, 401, 402, 403, 429, 5xx, và Cloudflare 1001 vào năm 2026. Học các chiến lược tiên tiến về chuyển đổi IP, tiêu đề, và giới hạn tốc độ thích ứng với CapSolver.

web scraping
Logo of CapSolver

Nikolai Smirnov

05-Feb-2026

Làm thế nào để giải quyết bảo vệ Cloudflare khi quét web
Cách khắc phục bảo vệ Cloudflare khi quét web

Học cách giải quyết bảo vệ Cloudflare khi quét dữ liệu web. Khám phá các phương pháp đã được chứng minh như xoay đổi IP, tinh vân TLS và CapSolver để xử lý các thách thức.

web scraping
Logo of CapSolver

Nikolai Smirnov

05-Feb-2026

RoxyBrowser với tích hợp CapSolver
Cách giải Captcha trong RoxyBrowser với tích hợp CapSolver

Tích hợp CapSolver với RoxyBrowser để tự động hóa các nhiệm vụ trình duyệt và vượt qua reCAPTCHA, Turnstile và các CAPTCHA khác.

web scraping
Logo of CapSolver

Anh Tuan

04-Feb-2026