Thỉnh thoảng tôi thường xuyên sử dụng trang web thương mại điện tử để lấy thông tin về giá sản phẩm. Tôi đã không sử dụng scraper được xây dựng bằng cách sử dụng Scrapy trong một thời gian và ngày hôm qua đã cố gắng sử dụng nó - Tôi gặp phải vấn đề với bảo vệ bot.Làm thế nào để bỏ qua bảo vệ bot/ddos cloudflare trong Scrapy?
Ứng dụng đang sử dụng tính năng bảo vệ DDOS của CloudFlare, về cơ bản, sử dụng đánh giá JavaScript để lọc ra các trình duyệt (và do đó các trình gỡ rối) bị tắt JS. Khi hàm được đánh giá, phản hồi với số được tính được tạo ra. Đổi lại, dịch vụ gửi lại hai cookie xác thực được đính kèm theo mỗi yêu cầu cho phép thu thập dữ liệu thông thường trang web. Here 's mô tả về cách hoạt động của nó.
Tôi cũng đã tìm thấy một mô-đun Python cloudflare-scrape sử dụng công cụ đánh giá JS bên ngoài để tính toán số và gửi yêu cầu quay lại máy chủ. Tôi không chắc chắn làm thế nào để tích hợp nó vào Scrapy mặc dù. Hoặc có thể có một cách thông minh hơn mà không cần sử dụng thực thi JS? Cuối cùng, đó là một biểu mẫu ...
Tôi xin lỗi bất kỳ trợ giúp nào.
có vấn đề gì với việc thực thi JS? không thể truy cập nhiều nội dung mà không có nó ... – dandavis
@dandavis Scrapy không thực thi JS. – Rejected
mà không có JS, cạo là nhận được vô dụng hơn tất cả các thời gian. bạn nên cân nhắc sử dụng trình duyệt để loại bỏ. kịch bản cạo của tôi có thể nhận được thông tin đăng nhập, lấy nội dung động và được phân trang, thậm chí là nhấp chuột giả để yêu cầu nội dung phụ động hơn trước khi cạo và tôi không nghĩ có bất kỳ mã nào trên 10 dòng hoặc cần thư viện bên ngoài lớn. tất cả những gì bạn cần là tampermonkey và thói quen tải xuống ... KISS. nếu bạn muốn nó tự động hơn, bạn có thể chuyển usercript thành phantomJS hoặc tương tự như vậy. – dandavis