Теряется середина страницы. Firefox с отключенным js выдает код полностью. Поэтому предположу, что контент статический html и дело не в том что CURL не умеет обрабатывать js.
public static function getContent($url, $userAgent = null, $referer = null) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
if (isset($userAgent)) {
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
}
if (isset($referer)) {
curl_setopt($ch, CURLOPT_REFERER, $referer);
}
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_MAXREDIRS, 50);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$fc='\!cookie-'.\Cat\Common\Text::urlToFileName($url, 'txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, App::dataDir() . $fc);
curl_setopt($ch, CURLOPT_COOKIEFILE, App::dataDir() . $fc);
$r = curl_exec($ch);
if (false === $r) {
static::$info = curl_error($ch);
} else {
static::$info = curl_getinfo($ch);
}
curl_close($ch);
return $r;
}
причем на разных страницах одного и того же сайта CURL ведет себя по разному. Одни качает полностью, другие - теряет данные. На комплексную защиту от парсинга не похоже..
Кто-нибудь сталкивался?