Для определенного сайта перестал работать CURL

Amigo_9876
На сайте с 01.04.2009
Offline
305
981

С недавних пор вместо кода страницы curl_exec начал выдавать следующий код:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
(function() {
var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');

xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.responseText == 1) {
var date = new Date();
date.setTime(date.getTime() + 2000);
document.cookie = 'referrer=' + encodeURIComponent(document.referrer) + '; expires=' + date.toGMTString();
window.location = window.location.href;
}
};

var url = location.protocol + '//' + location.hostname + '/index007.php';
var data = 'ua=' + encodeURIComponent(navigator.userAgent) + '&sec=' + encodeURIComponent('secret122key') + '&rnd=' + Math.random();

xhr.open('POST', url, true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.send(data);
})();
</script>
</head>
<body></body>
</html>

можно ли обойти запрет с помощью прокси или еще как то?

Меняюсь ссылками с украинских PBN (стройка, техника, грузоперевозки)
siv1987
На сайте с 02.04.2009
Offline
427
#1

Можно. Хотя конечно не понятно что именно вы собираетесь обойти. Поставьте в кукисах реферер и делайте паузы между запросами.

Amigo_9876
На сайте с 01.04.2009
Offline
305
#2

сделал следующее

header('Content-Type: text/html; charset=utf-8');

$user = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ru) Opera 8.50')";
$referer = 'http://site.com.ua/';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://site.com.ua/');
//curl_setopt($curl, CURLOPT_PROXY, "114.255.185.144");
curl_setopt($curl, CURLOPT_REFERER, $referer); // рефер
curl_setopt($curl, CURLOPT_USERAGENT, $user); // юзерагент
curl_setopt($curl, CURLOPT_COOKIEJAR, 'cookie.txt'); // Записываем cookie
curl_setopt($curl, CURLOPT_COOKIEFILE, 'cookie.txt'); // Читаем cookies
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
$out = curl_exec($curl);
echo $out;
curl_close($curl);

все равно выводит тот же код, а не код страницы.

как только убираю комментарии со строчки с прокси, вообще пустота.

что я делаю не так?

Mik Foxi
На сайте с 02.03.2011
Offline
1076
#3

вам выводят жабаскрипт. курл его не поддерживает.

смотрите куда предлагается средиректить этим жабаскриптом. и смотрите что там (куки и т.п.) будет вешаться браузеру. обычная проверка на антиддос и т.п.

Антибот, антиспам, веб файрвол, защита от накрутки поведенческих: https://antibot.cloud/ + партнерка, до 40$ с продажи.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий