Mình dùng simplehtmldom vs curl riêng đều không được, đoạn curl này trước dùng cào google dịch Code: // Open connection $ch = curl_init(); // Set the url, number of POST vars, POST data curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8'); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_USERAGENT, 'AndroidTranslate/5.3.0.RC02.130475354-53000263 5.1 phone TRANSLATE_OPM5_TEST_1'); // Execute post $result = curl_exec($ch); $html = str_get_html($result); Đoạn code bên site victim trả về, dù mới chỉ 1 request. Tuy là báo blocked nhưng vẫn lướt site bằng trình duyệt bình thường. Code: </head> <body> <div id="cf-wrapper"> <div class="cf-alert cf-alert-error cf-cookie-error" id="cookie-alert" data-translate="enable_cookies">Please enable cookies.</div> <div id="cf-error-details" class="cf-error-details-wrapper"> <div class="cf-wrapper cf-header cf-error-overview"> <h1 data-translate="block_headline">Sorry, you have been blocked</h1> <h2 class="cf-subheadline"><span data-translate="unable_to_access">You are unable to access</span> victimsite.com</h2> </div><!-- /.header --> <div class="cf-section cf-highlight"> <div class="cf-wrapper"> <div class="cf-screenshot-container cf-screenshot-full"> <span class="cf-no-screenshot error"></span> </div> </div> </div><!-- /.captcha-container --> <div class="cf-section cf-wrapper"> <div class="cf-columns two"> <div class="cf-column"> <h2 data-translate="blocked_why_headline">Why have I been blocked?</h2> <p data-translate="blocked_why_detail">This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.</p> </div> <div class="cf-column"> <h2 data-translate="blocked_resolve_headline">What can I do to resolve this?</h2> <p data-translate="blocked_resolve_detail">You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.</p> </div> </div> </div><!-- /.section --> <div class="cf-error-footer cf-wrapper w-240 lg:w-full py-10 sm:py-4 sm:px-8 mx-auto text-center sm:text-left border-solid border-0 border-t border-gray-300"> <p class="text-13"> <span class="cf-footer-item sm:block sm:mb-1">Cloudflare Ray ID: <strong class="font-semibold">71f3f59f2d519e3578</strong></span> <span class="cf-footer-separator sm:hidden">•</span> <span class="cf-footer-item sm:block sm:mb-1"><span>Your IP</span>: 116.111.112.113</span> <span class="cf-footer-separator sm:hidden">•</span> <span class="cf-footer-item sm:block sm:mb-1"><span>Performance & security by</span> <a rel="noopener noreferrer" href="https://www.cloudflare.com/5xx-error-landing" id="brand_link" target="_blank">Cloudflare</a></span> </p> </div><!-- /.error-footer --> </div><!-- /#cf-error-details --> </div><!-- /#cf-wrapper --> <script> window._cf_translation = {}; </script> </body> </html> Xin giải pháp để cào site này ạ, trước giờ cào toàn site không bị chặn nên chưa có kinh nghiệm các bác ạ. Xin cảm ơn!
Giải pháp của em như sau: + 1 con VPS (cùi thôi dùng DO cho băng thông khỏe) - để chạy 1 trình duyệt và lúc nào cũng bật. + Dùng socket gửi dữ liệu đến trình duyệt đang online ở VPS => trình duyệt ở VPS lấy dữ liệu và trả về cho client Phương pháp này em đã dùng và đến giờ vẫn OK
hihi anh có plan thôi chứ chưa làm. Hồi 2 (hay 3) năm trước anh crawl thử similarweb mà nó block kinh quá, giờ ko rõ thế nào. Bạn trên kia nói crawl similarweb mà dễ thì anh mua data luôn. Anh có sẵn vài triệu domain rồi, đưa sang bạn ấy crawl giúp
Similarweb nó xài PerimeterX căng phết đấy anh, không phải Cloudflare đâu, cào chậm chậm thì được chứ cào gắt là nó block, vài triệu không biết bao giờ xong luôn )
Mình chưa rõ kỹ thuật này, tuy thế, nếu dùng kỹ thuật này thì sao ko dùng automation Chrome browser luôn (ý là dùng Chrome thật, ko phải Headless)?