CAPSOLVER
Blog
Cách giải quyết reCaptcha v2 bằng cách sử dụng Puppeteer với Phần mở rộng Capsolver

Làm thế nào để giải reCaptcha v2 bằng Puppeteer [Javascript] với Capsolver Extension

Logo of CapSolver

Ethan Collins

Pattern Recognition Specialist

29-Dec-2025

Giới thiệu

Việc tự động hóa tương tác với trình duyệt thường yêu cầu xử lý các thách thức CAPTCHA, đặc biệt khi làm việc với các công cụ như Puppeteer. Trong hướng dẫn này, chúng ta sẽ đi qua cách thiết lập Puppeteer JS với tiện ích mở rộng CapSolver để giải reCAPTCHA v2 một cách hiệu quả. Mặc dù hướng dẫn này tập trung vào reCAPTCHA v2, cách tiếp cận tương tự có thể được mở rộng để xử lý các loại CAPTCHA khác được hỗ trợ bởi CapSolver.

Sau khi đọc xong bài viết này, bạn sẽ hiểu cách cài đặt các phụ thuộc cần thiết, cấu hình tiện ích mở rộng CapSolver, và kích hoạt việc giải CAPTCHA trực tiếp trong phiên trình duyệt được điều khiển bởi Puppeteer.

1. Cài đặt các thành phần puppeteer

⚠️ Trong bài viết này, chúng ta sẽ giải thích cách thiết lập Puppeteer JS với tiện ích mở rộng CapSolver để giải reCAPTCHA v2. Tuy nhiên, cách tiếp cận này cũng có thể được áp dụng cho các loại CAPTCHA khác.

Copy
npm i puppeteer puppeteer-extra puppeteer-extra-plugin-stealth

2. Thiết lập tiện ích mở rộng

Tải về tập tin nén chứa tiện ích mở rộng, và giải nén nó vào thư mục ./CapSolver.Browser.Extension ở thư mục gốc của dự án.

Tiện ích mở rộng có nhiều cài đặt, bao gồm giải CAPTCHA tự động, hỗ trợ proxy và các tùy chọn kiểm soát chi tiết. Các cài đặt này có sẵn trong tệp ./assets/config.json.

Các cài đặt này bao gồm:

json Copy
{
    "apiKey": "YourApiKey",
    "useCapsolver": true,

    "useProxy": false,
    "proxyType": "http",
    "hostOrIp": "",
    "port": "",
    "proxyLogin": "",
    "proxyPassword": "",

    "enabledForBlacklistControl": false,
    "blackUrlList": [],

    "enabledForRecaptcha": true,
    "enabledForRecaptchaV3": true,
    "enabledForcaptcha": true,

    "reCaptchaMode": "token",
    "captchaMode": "click",

    "reCaptchaDelayTime": 0,
    "captchaDelayTime": 0,

    "reCaptchaRepeatTimes": 10,
    "reCaptcha3RepeatTimes": 10,
    "captchaRepeatTimes": 10
}

Nhập khóa API của bạn vào tệp cài đặt tiện ích mở rộng ./assets/config.json. Khóa phải được gán vào trường apiKey. Bạn có thể sao chép khóa API trực tiếp từ bảng điều khiển CapSolver.

Ví dụ:

Copy
apiKey: "CAP-4FDBD3SDFSD-23S-2-3"

Trong ví dụ này, reCaptchaMode được đặt thành token. Mặc dù chế độ click cũng có sẵn, chế độ token thường được khuyến nghị cho reCAPTCHA.

3. Thiết lập Puppeteer để giải reCAPTCHA bằng tiện ích mở rộng CapSolver

Copy
const puppeteer = require('puppeteer-extra');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');
const { executablePath } = require('puppeteer'); 

(async () => {
  const pathToExtension = require('path').join(__dirname, 'CapSolver.Browser.Extension');
  puppeteer.use(StealthPlugin())
  const browser = await puppeteer.launch({
    headless: false,
    args: [
      `--disable-extensions-except=${pathToExtension}`,
      `--load-extension=${pathToExtension}`,
    ],
    executablePath: executablePath()
  });
  
  const [page] = await browser.pages()
})();

Tiếp theo, mở trang https://www.google.com/recaptcha/api2/demo và gửi CAPTCHA đến CapSolver.

Sử dụng page.goto(), điều hướng đến trang đích. CAPTCHA có thể được gửi để giải tự động hoặc thủ công.
Trong ví dụ này, chúng ta kích hoạt nó thủ công bằng cách chờ phần tử CAPTCHA và nhấp vào nó.

js Copy
await page.goto('https://site.example') 

// Chờ phần tử với CSS selector "#recaptcha-anchor-label"
await page.waitForSelector('#recaptcha-anchor-label')
// Nhấp vào phần tử
await page.click('#recaptcha-anchor-label')

Mã nguồn đầy đủ

js Copy
const puppeteer = require('puppeteer-extra');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');
const { executablePath } = require('puppeteer'); 

(async () => {
  const pathToExtension = require('path').join(__dirname, 'CapSolver.Browser.Extension');
  puppeteer.use(StealthPlugin())
  const browser = await puppeteer.launch({
    headless: false,
    args: [
      `--disable-extensions-except=${pathToExtension}`,
      `--load-extension=${pathToExtension}`,
    ],
    executablePath: executablePath()
  });
  
  const [page] = await browser.pages()

  // Mở một trang
  await page.goto('https://site.example') 

  // Chờ phần tử với CSS selector "#recaptcha-anchor-label"
  await page.waitForSelector('#recaptcha-anchor-label')
  // Nhấp vào phần tử
  await page.click('#recaptcha-anchor-label')
})();

Kết luận

Bạn đã thành công trong việc giải reCAPTCHA v2 bằng Puppeteer và tiện ích mở rộng CapSolver. Cấu hình này cung cấp một cách linh hoạt và mở rộng để xử lý các thách thức CAPTCHA trực tiếp trong môi trường trình duyệt thực tế. Bằng cách điều chỉnh cấu hình tiện ích mở rộng, quy trình làm việc tương tự có thể được sử dụng lại cho các loại CAPTCHA khác được hỗ trợ bởi CapSolver, giúp nó phù hợp cho các nhiệm vụ kiểm thử, tự động hóa và quy mô lớn dựa trên trình duyệt.

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

1. Phương pháp này có thể sử dụng trong chế độ headless không?
Tiện ích mở rộng CapSolver yêu cầu môi trường trình duyệt hiển thị. Vì lý do này, headless: false được khuyến nghị khi sử dụng phương pháp dựa trên tiện ích mở rộng.

2. Cấu hình này có hoạt động với các loại CAPTCHA khác ngoài reCAPTCHA v2 không?
Có. Tiện ích mở rộng CapSolver hỗ trợ nhiều loại CAPTCHA. Bạn có thể bật hoặc tắt các trình giải CAPTCHA cụ thể trong tệp config.json và điều chỉnh quy trình làm việc tương ứng.

3. Có cần proxy khi sử dụng tiện ích mở rộng CapSolver không?
Proxy là tùy chọn. Tiện ích mở rộng hỗ trợ cấu hình proxy, nhưng nhiều trường hợp sử dụng không cần đến nó. Việc sử dụng proxy phụ thuộc vào trang web đích và yêu cầu tự động hóa của bạn.

4. Sự khác biệt giữa chế độ tokenclick đối với reCAPTCHA là gì?
Chế độ token lấy giải pháp CAPTCHA một cách chương trình và thường ổn định hơn cho tự động hóa. Chế độ click mô phỏng tương tác của người dùng với nút chọn CAPTCHA.

5. Cấu hình này có thể sử dụng trong môi trường sản xuất không?
Có. Với cấu hình phù hợp, xử lý lỗi và các yếu tố mở rộng, cách tiếp cận này có thể được tích hợp vào các quy trình tự động hóa trình duyệt cấp độ sản xuất.

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

Làm thế nào để giải reCaptcha v2 bằng Puppeteer với phần mở rộng Capsolver
Làm thế nào để giải reCaptcha v2 bằng Puppeteer [Javascript] với Capsolver Extension

Học cách giải reCaptcha v2 một cách trơn tru với Puppeteer và Extension Capsolver, một hướng dẫn chi tiết về việc thiết lập và tự động hóa các giải pháp captcha một cách hiệu quả

reCAPTCHA
Logo of CapSolver

Ethan Collins

29-Dec-2025

Cách nhận diện các loại reCAPTCHA khác nhau
Cách nhận diện các loại reCAPTCHA khác nhau

Khám phá thế giới reCAPTCHA: Học cách nhận diện các loại của nó, từ phiên bản gốc đến phiên bản Enterprise, và hiểu những tác động của chúng đối với bảo mật web và trải nghiệm người dùng.

reCAPTCHA
Logo of CapSolver

Emma Foster

26-Dec-2025

Vượt qua reCaptcha v2
Giải reCaptcha v2 bằng CapSolver API

Giải quyết reCaptcha V2 một cách dễ dàng bằng API CapSolver với hướng dẫn từng bước, cung cấp cả giải pháp bằng Python và GO. Lý tưởng cho người dùng tìm kiếm phương pháp giải captcha nhanh chóng và hiệu quả.

reCAPTCHA
Logo of CapSolver

Aloísio Vítor

25-Dec-2025

Cách giải reCaptcha v2 với Node.JS
Cách giải reCaptcha v2 bằng Node.JS

Học cách giải quyết reCAPTCHA v2 bằng Node.js với CapSolver. Bao gồm ví dụ không dùng proxy và có sử dụng proxy, các bước cài đặt, và các thực hành tốt nhất.

reCAPTCHA
Logo of CapSolver

Nikolai Smirnov

17-Dec-2025

ReCAPTCHA phiên bản 2
Làm thế nào để nhập CAPTCHA đúng cách và làm thế nào để xác định khóa trang reCAPTCHA v2

Việc xác định khóa trang ReCAPTCHA v2 là một thách thức phổ biến khi xử lý các triển khai CAPTCHA hiện đại. Bài viết này giải thích tại sao khóa trang quan trọng, tại sao nó thường khó tìm thấy thủ công và cách các dịch vụ nhận diện CAPTCHA đơn giản hóa quy trình này. Nó cũng giới thiệu phần mở rộng Chrome của CapSolver, có thể tự động phát hiện các tham số ReCAPTCHA v2 và trả về kết quả có cấu trúc, giúp người dùng làm việc hiệu quả hơn với các trang web có hỗ trợ CAPTCHA.

reCAPTCHA
Logo of CapSolver

Aloísio Vítor

16-Dec-2025

công cụ giải reCAPTCHA
reCAPTCHA là gì? Ví dụ về ReCAPTCHA ở đâu reCAPTCHA demo

Bài viết này cung cấp tổng quan toàn diện về reCAPTCHA, các loại phổ biến của nó và một demo trực tiếp để giúp bạn hiểu cách hoạt động của nó. Bài viết cũng trình bày cách giải quyết reCAPTCHA v2 một cách hiệu quả bằng CapSolver, nâng cao quy trình tự động hóa và phát triển trong khi duy trì bảo mật trang web.

reCAPTCHA
Logo of CapSolver

Sora Fujimoto

15-Dec-2025