🥳Hãy tham gia Cộng đồng ScrapelessYêu cầu dùng thử miễn phí để truy cập Bộ công cụ quét web mạnh mẽ của chúng tôi!
Quay lại Blog

Cách Sử Dụng Playwright để Vượt Qua Cloudflare vào Năm 2024

Emily Chen
Emily Chen

Advanced Data Extraction Specialist

11-Sep-2024

Khi sử dụng trình duyệt ẩn danh, liệu trình thu thập dữ liệu web của bạn vẫn bị chặn? Bạn sẽ tìm hiểu cách vượt qua Cloudflare bằng cách cải thiện lớp che Playwright trong hướng dẫn này.

Cloudflare: Nó là gì?

Quản lý Bot, một dịch vụ được cung cấp bởi nhà cung cấp tối ưu hóa bảo mật và hiệu suất Cloudflare, là một cơn ác mộng đối với nhiều trình thu thập dữ liệu. Khoảng một phần năm trang web sử dụng tường lửa ứng dụng web (WAF), thường xuyên xác định và chặn trình thu thập dữ liệu. Các trình duyệt ẩn danh như Playwright và Selenium thuộc loại này.

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

Cloudflare so sánh và phân tách lưu lượng truy cập được tạo bởi bot và bởi người dùng thực bằng một số kỹ thuật, chẳng hạn như:

Phân tích hành vi: Nó theo dõi một số khía cạnh của tương tác của người dùng với trang web, bao gồm nhấp chuột, di chuyển chuột và thời gian tải trang.

Phân tích uy tín IP: Mỗi địa chỉ IP của yêu cầu được so sánh với cơ sở dữ liệu để xác định xem nó đã được sử dụng để thu thập dữ liệu hay chưa.

Phân tích User-Agent: chuỗi đóng vai trò là phương tiện để xác định trình duyệt hoặc thiết bị thực hiện yêu cầu trang web. Cloudflare có thể xác định các chuỗi User-Agent chung hoặc dễ dàng nhận biết được được sử dụng bởi trình thu thập dữ liệu.

Kiểm tra CAPTCHA: hệ thống có thể chọn xác định xem người dùng gửi yêu cầu đến trang web là robot hay người. Yêu cầu sẽ được chấp thuận nếu người dùng vượt qua. Ngược lại, nó sẽ bị cấm.

Phân tích tốc độ yêu cầu: Sử dụng kỹ thuật này, người ta có thể theo dõi khối lượng truy vấn được gửi đến trang web và phát hiện các xu hướng đặc trưng của bot tự động. Ví dụ: bot thường gửi rất nhiều yêu cầu trong một khoảng thời gian ngắn.

Tại sao việc sử dụng Playwright cơ bản không đủ để vượt qua Cloudflare

Cơ bản Có thể không thể vượt qua các biện pháp bảo vệ chống bot của Cloudflare bằng Playwright. Nguyên nhân? Mặc dù một số khó khăn có thể được khắc phục bằng cách mô phỏng hành vi duyệt web giống như con người bằng cách sử dụng công cụ tự động hóa trình duyệt này hoặc các công cụ tương tự, nhưng các phương pháp tinh vi hơn, chẳng hạn như sử dụng proxy và tác nhân người dùng tùy chỉnh, có thể cần thêm nỗ lực để khắc phục.
Để minh họa điều này, hãy khởi động một dự án Playwright NodeJS và xem cách nó không hoạt động trên Cloudflare.

Bước 1: Xác minh rằng npm và Node.js đã được cài đặt trên máy tính của bạn.

Bước 2: Sử dụng lệnh này để khởi chạy một dự án mới sau khi điều hướng đến thư mục mong muốn:

language Copy
npm init

Bước 3: Bây giờ, sử dụng lệnh sau để cài đặt Playwright làm phụ thuộc.

language Copy
npm install playwright

Bước 4: Hoàn hảo! Bây giờ bạn có thể bắt đầu sử dụng Playwright. Tạo một tệp mới có phần mở rộng là .js, chẳng hạn như scraper.js trong thư mục dự án của bạn. Trong đó, xây dựng một tập lệnh để truy cập https://crozdesk.com và chụp ảnh màn hình.

language Copy
const playwright = require("playwright");

async function scraper() {
  const browser = await playwright.chromium.launch({ headless: true });
  const context = await browser.newContext();
  const page = await context.newPage();
  await page.goto("https://crozdesk.com");
  await page.waitForTimeout(1000);
  await page.screenshot({ path: "screenshot.png", fullPage: true });
  await browser.close();
}

scraper();

Như bạn có thể thấy ở dòng thứ tư, trình thu thập dữ liệu của chúng tôi sử dụng Chromium làm trình duyệt, nhưng bạn có thể sử dụng trình duyệt khác.

Bước 5: Sử dụng lệnh này để chạy toàn bộ mã:

language Copy
node scraper.js

Đây là kết quả:

access denied

Thật không may, phiên bản đơn giản của Playwright bị gắn cờ là bot và sau đó bị chặn truy cập trang web.

Trong phần tiếp theo, chúng ta sẽ xem xét một số chiến lược sẽ giúp bạn vượt qua Cloudflare. Hãy tiếp tục đọc!

Cách vượt qua Cloudflare bằng cách che Playwright

Hãy xem xét một số chiến lược để xử lý các kỹ thuật phát hiện của Cloudflare. Thông thường, để tập lệnh của bạn hoạt động, sự kết hợp của những điều này sẽ được yêu cầu.

Phương pháp 1: Sao chép hành vi của con người

Để làm cho trình duyệt tự động trông giống con người hơn, bạn có thể thêm các khoảng dừng ngẫu nhiên, cuộn trang và các tương tác khác với trang web vào mã Playwright trước đó của chúng tôi.

Phương pháp 2: Sử dụng proxy

Rất dễ bị cấm thu thập dữ liệu web nếu bạn gửi quá nhiều truy vấn trong một khoảng thời gian ngắn. Bằng cách sử dụng proxy luân phiên để khiến bản thân trông giống như nhiều người dùng khác nhau, bạn có thể ngăn chặn điều đó.

Phương pháp 3: Chọn User-Agent duy nhất

User-Agent chứa thông tin về máy khách thực hiện các yêu cầu, bao gồm hệ điều hành và trình duyệt. Tốt hơn là sử dụng User-Agent tùy chỉnh mô phỏng trình duyệt trực tuyến phổ biến thay vì trình duyệt mặc định của Playwright để tránh bị phát hiện.

Phương pháp 4: Sử dụng bộ giải quyết CAPTCHA

Với Playwright, bạn có thể sử dụng nhiều công cụ khác nhau, chẳng hạn như Scrapeless, để giải quyết CAPTCHA.

Bạn đã chán ngấy với việc liên tục bị chặn thu thập dữ liệu web và CAPTCHA?

Giới thiệu Scrapeless - giải pháp thu thập dữ liệu web trọn gói tối ưu!

Khám phá đầy đủ tiềm năng khai thác dữ liệu của bạn với bộ công cụ mạnh mẽ của chúng tôi:

Best Web Unlocker

Tự động giải quyết CAPTCHA nâng cao, giữ cho quá trình scraping của bạn liền mạch và không bị gián đoạn.

Trải nghiệm sự khác biệt - thử dùng miễn phí!

Phương pháp 5: Thêm Playwright-extra

Playwright-extra là một khung cho các plugin Playwright, nhẹ và cho phép các tiện ích bổ sung hữu ích. Tiện ích chúng ta sẽ sử dụng để vượt qua Cloudflare được gọi là Puppeteer-extra-plugin-stealth, và nó sử dụng một số chiến lược, bao gồm tạo sự kiện chuột và sửa đổi User-Agent, để che giấu việc sử dụng trình duyệt headless.

Kết luận

Như bạn có thể thấy, bạn có thể sử dụng Playwright để vượt qua Cloudflare, nhưng bạn có thể cần sử dụng một số thủ thuật phức tạp có thể không hoạt động mọi lúc. Trong khi đó, Scrapeless sẽ giúp bạn thành công ngay lập tức và cung cấp cho bạn một khóa API miễn phí ngay bây giờ.

Tại Scrapeless, chúng tôi chỉ truy cập dữ liệu có sẵn công khai trong khi tuân thủ nghiêm ngặt các luật, quy định hiện hành và chính sách bảo mật của trang web. Nội dung trong blog này chỉ nhằm mục đích trình diễn và không liên quan đến bất kỳ hoạt động bất hợp pháp hoặc vi phạm nào. Chúng tôi không đảm bảo và từ chối mọi trách nhiệm pháp lý đối với việc sử dụng thông tin từ blog này hoặc các liên kết của bên thứ ba. Trước khi tham gia vào bất kỳ hoạt động thu thập dữ liệu nào, hãy tham khảo ý kiến ​​cố vấn pháp lý của bạn và xem lại các điều khoản dịch vụ của trang web mục tiêu hoặc có được các quyền cần thiết.

Bài viết phổ biến nhất

Danh mục