Cách giải Captcha Turnstile của Cloudflare bằng NodeJS

Aloísio Vítor
Image Processing Expert
08-Dec-2025

Tổng quan về Cloudflare Turnstile
Cloudflare Turnstile cung cấp một giải pháp miễn phí để thay thế các CAPTCHA truyền thống, mang lại trải nghiệm người dùng thuận tiện thông qua một đoạn mã đơn giản. Nó đảm bảo rằng người truy cập là thực sự hợp lệ và ngăn chặn lạm dụng mà không gặp phải các vấn đề về quyền riêng tư hoặc trải nghiệm người dùng kém như các CAPTCHA truyền thống.
Nhận diện CAPTCHA Cloudflare Turnstile
-
Thử thách không tương tác: Quy trình chạy mà không cần tương tác từ người dùng. Ví dụ: Thử thách không tương tác

-
Thử thách tương tác tối thiểu: Có thể bao gồm các hành động đơn giản như nhấp vào nút nếu hệ thống nghi ngờ người truy cập có thể là bot. Ví dụ: Thử nghiệm được quản lý

-
Thử thách không nhìn thấy: Thử thách hoạt động ẩn, được tải một cách kín đáo trong HTML của trang web. Ví dụ: Thử thách không nhìn thấy

🛠️ Giải quyết CAPTCHA Cloudflare Turnstile
⚙️ Yêu cầu trước khi bắt đầu
- Cài đặt NodeJs
- Khóa API của Capsolver
🤖 Bước 1: Cài đặt các gói cần thiết
Thực hiện các lệnh sau để cài đặt các gói cần thiết:
python
npm i axios
👨💻 Bước 2: Mã NodeJS để giải CAPTCHA Cloudflare Turnstile
Dưới đây là đoạn mã Python mẫu để thực hiện công việc:
js
const axios = require('axios');
const CAPSOLVER_API_KEY = "khóa api của bạn";
const PAGE_URL = "trang web ";
const WEBSITE_KEY = "khóa trang web";
function solvecf(metadata_action = null, metadata_cdata = null) {
const url = "https://api.capsolver.com/createTask";
const task = {
type: "AntiTurnstileTaskProxyLess",
websiteURL: PAGE_URL,
websiteKey: WEBSITE_KEY,
};
if (metadata_action || metadata_cdata) {
task.metadata = {};
if (metadata_action) {
task.metadata.action = metadata_action;
}
if (metadata_cdata) {
task.metadata.cdata = metadata_cdata;
}
}
const data = {
clientKey: CAPSOLVER_API_KEY,
task: task
};
return axios.post(url, data)
.then(response => {
console.log(response.data);
return response.data.taskId;
});
}
function solutionGet(taskId) {
const url = "https://api.capsolver.com/getTaskResult";
let status = "";
const checkStatus = () => {
const data = { clientKey: CAPSOLVER_API_KEY, taskId: taskId };
return axios.post(url, data)
.then(response => {
console.log(response.data);
status = response.data.status || "";
console.log(status);
if (status === "ready") {
return response.data.solution;
}
return new Promise(resolve => setTimeout(resolve, 2000)).then(checkStatus);
});
};
return checkStatus();
}
async function main() {
try {
const taskId = await solvecf();
const solution = await solutionGet(taskId);
if (solution) {
const user_agent = solution.userAgent;
const token = solution.token;
console.log("User_Agent:", user_agent);
console.log("Đã giải CAPTCHA Cloudflare Turnstile, token:", token);
}
} catch (error) {
console.error("Lỗi khi tương tác với API Capsolver:", error);
}
}
main();
⚠️ Thay đổi các biến này
- CAPSOLVER_API_KEY: Nhận khóa API của bạn từ Bảng điều khiển Capsolver.
- PAGE_URL: Thay thế bằng URL của trang web mà bạn muốn giải CAPTCHA CloudFlare Turnstile.
- WEBSITE_KEY: Thay thế bằng khóa trang web của trang web
CAPTCHA Cloudflare Turnstile trông như thế nào

Trong khi đó, nếu bạn muốn kiểm tra kịch bản của mình để phát hiện hành vi bot, công cụ Phát hiện bot của BrowserScan có thể giúp bạn xác định và tinh chỉnh hành vi giống bot trong kịch bản của mình.
🔚 Kết luận
Cloudflare Turnstile cung cấp một giải pháp nhẹ nhàng, thân thiện với quyền riêng tư thay thế cho các CAPTCHA truyền thống, cải thiện trải nghiệm người dùng đồng thời lọc hiệu quả các lưu lượng tự động. Với các công cụ như Capsolver, các nhà phát triển có thể vượt qua các thử thách Turnstile một cách lập trình để kiểm thử, quét web hoặc tự động hóa. Bằng cách tuân theo các bước trên và cấu hình chính xác tham số API, bạn có thể nhanh chóng tích hợp việc giải Turnstile vào quy trình làm việc của mình và tối ưu hóa các yêu cầu tự động một cách dễ dàng.
❓ Câu hỏi thường gặp
1. Điều gì khiến Cloudflare Turnstile khác biệt so với CAPTCHA truyền thống?
Turnstile tập trung vào xác minh không tương tác và không gây cản trở, không yêu cầu tương tác từ người dùng, mang lại trải nghiệm người dùng tốt hơn và bảo mật thông tin cá nhân tốt hơn so với CAPTCHA dựa trên hình ảnh truyền thống.
2. Tôi có cần proxy để giải CAPTCHA Cloudflare Turnstile bằng Capsolver không?
Không. Ví dụ sử dụng AntiTurnstileTaskProxyLess, có nghĩa là proxy không cần thiết. Tuy nhiên, proxy vẫn có thể hữu ích trong các nhiệm vụ bảo mật cao hoặc khối lượng lớn.
3. Làm thế nào để tìm websiteKey cho CAPTCHA Turnstile?
Mở trang web trong trình duyệt → Kiểm tra → tìm kiếm đoạn mã turnstile → giá trị data-sitekey là khóa trang web của bạn.
4. Phương pháp này có thể sử dụng cho quét web quy mô lớn hoặc tự động hóa không?
Có, nhưng đảm bảo rằng việc sử dụng của bạn tuân thủ các điều khoản dịch vụ của trang web. Đối với khối lượng lớn, nên xử lý độ trễ, xoay user-agent và sử dụng các mô hình yêu cầu phù hợp.
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

Cách giải Captcha Turnstile của Cloudflare bằng NodeJS
Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách giải CAPTCHA Turnstile của Cloudflare bằng NodeJS.

Aloísio Vítor
08-Dec-2025

Cách khắc phục Lỗi 403 Truy cập bị từ chối của Cloudflare và 522/1020/1010/1015/1012
Cloudflare là một mạng phân phối nội dung (CDN) và dịch vụ bảo mật được sử dụng rộng rãi giúp các website giảm thiểu các mối đe dọa, bao gồm tấn công DDoS và bot gây hại...

Ethan Collins
08-Dec-2025

Lỗi Cloudflare 1006, 1007, 1008 - Giải pháp khắc phục | Cách sửa lỗi
Đang vật lộn với lỗi Cloudflare 1006, 1007 hoặc 1008? Tìm hiểu các giải pháp thực tế để giải quyết các lần từ chối truy cập này và nâng cao trải nghiệm quét web của bạn.

Rajinder Singh
05-Dec-2025

Làm thế nào để xác định xem `action` có cần thiết hay không để giải Cloudflare Turnstile bằng cách sử dụng tiện ích mở rộng CapSolver
Học cách nhận diện hành động để giải CAPTCHA hiệu quả cho Cloudflare Turnstile. Theo dõi hướng dẫn từng bước của chúng tôi về cách sử dụng các công cụ và kỹ thuật của Capsolver.

Aloísio Vítor
05-Dec-2025

Cách tự động hóa việc giải quyết bài kiểm tra Cloudflare trong Selenium
Nắm vững chiến lược tối ưu để giải quyết Cloudflare Challenge trong Selenium. Sử dụng Undetected-Chromedriver, mô phỏng hành vi và API của CapSolver để tự động hóa web đáng tin cậy.

Anh Tuan
04-Dec-2025

Cách giải quyết Thách thức Cloudflare với Node.js
Tại sao Cloudflare chặn các trình quét Node.js và cách các nhà phát triển lấy cf_clearance một cách đáng tin cậy cho các quy trình dữ liệu.

Anh Tuan
03-Dec-2025

