Cách Bỏ Qua Cloudflare Khi Scraping (2026 Phương Pháp)
TL;DR
Phương pháp đáng tin cậy 2026 cho một nguồn được bảo vệ bởi Cloudflare là một con đường truy cập được phê duyệt: một API chính thức, một danh tính máy được chủ sở hữu trang phê duyệt, hoặc một quy tắc cho phép rõ ràng cho khối lượng công việc của bạn.
Một thử thách Cloudflare hoặc 403 là một quyết định truy cập. Việc thay đổi proxy lặp đi lặp lại, mẹo dấu vân tay trình duyệt, hoặc tự động hóa CAPTCHA không thay thế cho sự cho phép.
Đối với một ứng dụng Cloudflare Access mà bạn kiểm soát, mã thông báo dịch vụ sử dụng tiêu đề CF-Access-Client-Id và CF-Access-Client-Secret dưới chính sách Service Auth.
Chủ sở hữu trang có thể cấu hình các ngoại lệ hạn chế cho các khách hàng hợp pháp, nhưng nên xem xét tác động bảo mật và theo dõi lưu lượng truy cập kết quả.
Nstdata Crawl có thể xử lý JavaScript và định tuyến các yêu cầu được phép thông qua các proxy tích hợp; nó không cấp quyền để vượt qua bảo vệ của Cloudflare.
Ý Nghĩa Của “Bỏ Qua Cloudflare” Trong Quy Trình Thu Thập Dữ Liệu Được Phê Duyệt Là Gì?
Trong một quy trình đã được phê duyệt, việc bỏ qua một thử thách có nghĩa là chủ sở hữu trang đã cung cấp một lộ trình có thể đọc được bằng máy móc mà không yêu cầu kiểm tra tương tác từ con người cho mỗi yêu cầu. Nó có thể là một API có tài liệu, một mã thông báo dịch vụ Cloudflare Access cho một ứng dụng mà bạn điều hành, hoặc một ngoại lệ quy tắc bảo mật hạn chế được chủ sở hữu trang phê duyệt. Điều này không có nghĩa là đánh bại thử thách của bên thứ ba bằng một proxy hoặc ngụy trang trình duyệt không được phê duyệt.
Nstdata Crawl có thể xử lý một trang được phép sau khi chủ sở hữu đã thiết lập con đường truy cập đã được phê duyệt; định tuyến proxy của nó không tạo ra sự cho phép đó.
Tài liệu giải pháp bot của Cloudflare giải thích rằng một trang có thể thử thách hoặc chặn lưu lượng tự động. Một công cụ thu thập có thể nhận được , một trang thử thách, hoặc một HTTP chứa một thử thách thay vì nội dung gốc. Đối xử với tất cả những điều này như là một kết quả truy cập cần điều tra. cho biết khách hàng phải chịu trách nhiệm về việc lựa chọn mục tiêu, quyền truy cập và sử dụng hạ nguồn.
Tại Sao Một Trang Được Bảo Vệ Bởi Cloudflare Lại Không Thể Thu Thập Được?
Trước tiên hãy xác định lớp thất bại. Một 401 hoặc 403 từ Cloudflare Access có thể chỉ ra rằng thông tin xác thực dịch vụ bị thiếu hoặc không được ủy quyền. Một thử thách bot hoặc WAF có thể có nghĩa là chính sách của trang phân loại yêu cầu là tự động. Một 429 có thể phản ánh việc giới hạn tốc độ. Một phản hồi 200 vẫn có thể chứa một thử thách hoặc shell đăng nhập. Một lỗi hiển thị trình duyệt là khác nhau: trang có thể được phép nhưng nội dung của nó chưa tải.
Triệu chứng
Nguyên nhân có thể xảy ra
Hành động tiếp theo đúng
401 hoặc 403 trên ứng dụng Access của bạn
Thiếu, hết hạn, hoặc mã thông báo dịch vụ không được phê duyệt
Kiểm tra chính sách Service Auth và nhật ký của ứng dụng
Trang thử thách từ một trang bên thứ ba
Chính sách của trang giới hạn quyền truy cập tự động
Dừng lại và yêu cầu một API được phê duyệt hoặc sự cho phép
429
Ngân sách yêu cầu đã vượt quá
Làm chậm lại và tôn trọng hướng dẫn thử nghiệm của nguồn
Shell ứng dụng trống
JavaScript không được hiển thị hoặc dữ liệu không được tải
Kiểm tra một lộ trình hiển thị và dấu hiệu nội dung được phép
200 với nội dung sai
Lỗi mềm, đồng ý, hoặc trang thử thách
Từ chối bản ghi và kiểm tra trạng thái trang
Đừng phân loại mọi thất bại là “Cloudflare chặn.” Ghi lại trạng thái phản hồi, URL cuối cùng, tiêu đề, một ảnh chụp màn hình được phép, và một chữ ký nội dung ngắn. Bằng chứng này giúp chủ sở hữu nguồn hoặc nhóm bảo mật của bạn chọn một phương pháp truy cập phù hợp mà không cần đoán.
Bạn Cần Gì Trước Khi Bắt Đầu?
Bạn cần một quyền hợp pháp để thu thập các trang, chủ sở hữu miền hoặc liên hệ API, phạm vi trang dự kiến, một ngân sách yêu cầu, và một hồ sơ về những dữ liệu có thể được giữ lại. Đối với một ứng dụng Cloudflare Access, bạn cần sự chấp thuận của quản trị viên để tạo một mã thông báo dịch vụ và một chính sách ứng dụng cho phép nó. Lưu trữ ID và bí mật của khách hàng trong một trình quản lý bí mật. Đối với Nstdata Crawl, hãy lấy một tài khoản và khóa API từ Dashboard → Crawl Playground.
Đừng yêu cầu một nhà phát triển dán các bí mật Cloudflare sản xuất vào một tài liệu hướng dẫn trình duyệt hoặc một kho công cộng. Một mã thông báo dịch vụ là một thông tin xác thực, và sự ủy quyền của nó nên đủ hẹp để phù hợp với ứng dụng dự kiến. Nếu trang không phải của bạn, hãy yêu cầu chủ sở hữu cung cấp một API hoặc sắp xếp truy cập máy rõ ràng.
Làm Thế Nào Để Bạn Truy Cập Một Nguồn Được Bảo Vệ Bởi Cloudflare Với Sự Cho Phép?
Phương Pháp 1: Sử Dụng API Hoặc Xuất Chính Thức của Nguồn
Bước 1. Tìm API, nguồn cấp dữ liệu, xuất hoặc thỏa thuận đối tác được tài liệu hóa của nguồn. Xác nhận rằng dữ liệu và mục đích sử dụng dự kiến được bao phủ.
Bước 2. Xác thực bằng cách sử dụng phương pháp mà nguồn chỉ định và tôn trọng giới hạn, phân trang, và các điều khoản giữ lại.
Bước 3. Xác thực các bản ghi đã trả về và bảo tồn siêu dữ liệu nguồn/phiên bản. Con đường này thường cung cấp các ID và tín hiệu thay đổi ổn định hơn so với việc phân tích một trang được bảo vệ bằng thử thách.
Tốt nhất cho: Dữ liệu bên thứ ba khi trang đã cung cấp một sản phẩm dữ liệu được hỗ trợ. Một công cụ thu thập không nên là mặc định nếu API trả lời cùng một câu hỏi.
Phương pháp 2: Sử dụng Mã Token Dịch vụ Cloudflare Access trên Ứng dụng Bạn Kiểm Soát
Bước 1. Để một quản trị viên Access tạo một mã token dịch vụ và thêm nó vào một chính sách Service Auth cho ứng dụng dự kiến. Tài liệu hiện tại về mã token dịch vụ Cloudflare mô tả chính sách và tiêu đề.
Bước 2. Gửi các tiêu đề mã token đã được phê duyệt từ một khách hàng phía máy chủ:
curl--request GET 'https://your-approved-app.example.com/data'\--header"CF-Access-Client-Id: ${CF_ACCESS_CLIENT_ID}"\--header"CF-Access-Client-Secret: ${CF_ACCESS_CLIENT_SECRET}"
Bước 3. Xác nhận rằng ứng dụng trả về dữ liệu mong muốn, xem lại nhật ký Access và thay đổi secret theo chính sách của tổ chức bạn. Các biểu thức thay thế ở trên đề cập đến ứng dụng đã được phê duyệt của bạn; không có mã token trực tiếp hoặc điểm cuối được bảo vệ nào được bao gồm ở đây.
Tốt nhất cho: Các ứng dụng nội bộ hoặc đối tác mà chủ sở hữu cung cấp quyền truy cập máy móc một cách rõ ràng. Một mã token dịch vụ cho một ứng dụng Access không ủy quyền cho các miền không liên quan.
Phương pháp 3: Yêu Cầu Chủ Sở Hữu Trang Web Một Ngoại Lệ Hẹp
Bước 1. Cung cấp cho chủ sở hữu mục đích, thông tin liên hệ, khối lượng dự kiến, phạm vi điểm cuối, danh tính khách hàng và điều kiện dừng.
Bước 2. Để chủ sở hữu quyết định xem một lộ trình API dành riêng, chính sách Access, hoặc quy tắc Cloudflare có phạm vi hẹp có phù hợp hay không. Tài liệu Hành động Bỏ qua WAF của Cloudflare mô tả các ngoại lệ do chủ sở hữu kiểm soát cho lưu lượng truy cập hợp pháp, bao gồm các giới hạn cụ thể cho sản phẩm của họ.
Bước 3. Kiểm tra lộ trình đã được phê duyệt với một mẫu nhỏ và theo dõi tải nguồn và tỷ lệ lỗi. Xem lại ngoại lệ khi khối lượng công việc hoặc quyết định truy cập thay đổi.
Tốt nhất cho: Trang web của bạn hoặc một thỏa thuận đối tác rõ ràng. Đừng tạo ra một quy tắc rộng rãi vô hiệu hóa bảo vệ cho tất cả các bot chỉ để làm cho một công việc dữ liệu hoạt động.
Nstdata Có Thể Giúp Gì Về Các Trang Đã Được Bảo Vệ Bởi Cloudflare?
Nstdata Crawl có thể lấy và hiển thị các trang đã được phê duyệt, phát hiện nội dung liên kết trong giới hạn và trả về dữ liệu mà một ứng dụng có thể xác minh. Việc hiển thị qua trình duyệt có thể giúp khi nguồn cho phép truy cập nhưng nội dung cần thiết được tạo ra bởi JavaScript. Định tuyến proxy có thể đơn giản hóa việc thu thập mạng đã được phê duyệt. Không có khả năng nào thay đổi chính sách Cloudflare Access hoặc đảm bảo rằng một trang sẽ chấp nhận yêu cầu.
Định dạng sẵn sàng cho LLM: Markdown giúp tài liệu được phép dễ dàng tiếp nhận vào RAG; HTML và dữ liệu thô hỗ trợ tách trường và chẩn đoán; các liên kết tiết lộ các trang đã phát hiện; ảnh chụp màn hình và PDF cho thấy trạng thái trang đã thực sự được trả về. Một trang thách thức nên bị từ chối, bất kể định dạng.
Proxy tích hợp sẵn: Các công việc Crawl tiêu chuẩn kế thừa định tuyến Nstdata mà không cần cài đặt riêng biệt Host, Port, Username, Password, hoặc Protocol. Điều này loại bỏ việc thiết lập proxy khỏi quy trình làm việc đã được kiểm tra, không phải là cần phải có sự ủy quyền của trang.
Công việc trang có giới hạn:maxDepth, maxPages, includeUrls, và excludeUrls cho phép nhóm chỉ thu thập phần đã được phê duyệt. Tài liệu Hướng dẫn API Crawl mô tả việc gửi công việc, truy vấn và lấy kết quả.
Làm Thế Nào Để Thêm Nstdata Crawl Vào Quy Trình Đã Được Phê Duyệt?
Bước 1. Xác minh chủ sở hữu nguồn đã phê duyệt mục tiêu và lộ trình truy cập. Trong Dashboard → Crawl Playground, lấy mã API Nstdata. Đối với ứng dụng Cloudflare Access, sử dụng đường dẫn xác thực được hỗ trợ bởi chủ sở hữu và xác nhận các tùy chọn yêu cầu hiện tại của Nstdata trước khi chuyển bất kỳ thông tin xác thực nào; đừng đặt một secret dịch vụ vào một trường yêu cầu chưa được xác minh.
Bước 2. Trước tiên, hãy kiểm tra một trang công khai hoặc đã được phê duyệt, sử dụng các trường đã được tài liệu hóa:
curl--request POST 'https://api.nstdata.io/api/v1/crawl/scrape/submit-sync'\--header"x-api-key: ${NSTDATA_API_TOKEN}"\--header'Content-Type: application/json'\--data'{"url":"https://example.com/","formats":["markdown","html","screenshot"],"onlyMainContent":true}'
Bước 3. Xác nhận thành công của nhiệm vụ lồng ghép, metadata.statusCode, tiêu đề, và nội dung trang. Nếu một thách thức xuất hiện, đánh dấu công việc là access_review_required và dừng các cố gắng tự động. Ví dụ này chứng minh một hình thức tích hợp, không phải là quyền truy cập Cloudflare hoặc loại bỏ thách thức. Một cuộc gọi trực tiếp yêu cầu một khóa tài khoản.
Đối với các tương tác trình duyệt tùy chỉnh đã được phê duyệt, Nstdata Cloud Browser là một sản phẩm riêng biệt; nó cũng không cấp quyền truy cập. Hướng dẫn crawling có trách nhiệm cung cấp các điều kiện dừng hoạt động, trong khi hướng dẫn tuân thủ web scraping thảo luận về việc truy xuất tác nhân có giới hạn. Ghi lại lộ trình đã được phê duyệt và làm cho các từ chối truy cập trở thành trạng thái cuối cùng.
Làm Thế Nào Để Xác Minh Rằng Lộ Trình Được Ủy Quyền Đang Hoạt Động?
Kiểm tra danh tính máy chính xác và điểm cuối mà chủ sở hữu đã phê duyệt. Xác nhận rằng phản hồi là trang hoặc đối tượng dữ liệu dự kiến, không chỉ đơn giản là thử thách 200 hoặc chuyển hướng. So sánh một tiêu đề hoặc ID hồ sơ đã biết, kiểm tra URL cuối cùng và xem lại nhật ký truy cập cho danh tính dịch vụ. Ghi lại ngân sách tỷ lệ đã cấu hình và kiểm tra một lô nhỏ trước khi lập lịch một công việc định kỳ. Nếu lộ trình thất bại sau khi thay đổi chính sách, hãy dừng lại và yêu cầu chủ sở hữu xem xét quy tắc; không mở rộng ngoại lệ hoặc thay đổi danh tính một mình.
Hướng dẫn kết xuất JavaScript giải thích cách kiểm tra nội dung trang sau yêu cầu trình duyệt đã được phê duyệt. Tuyên bố tuân thủ dữ liệu Nstdata giải thích cách ghi lại việc sử dụng tiếp theo.