Парсинг с сайта www.kinopoisk.ru

Статус
В этой теме нельзя размещать новые ответы.
можно брать страницу из google кэша, может кое где информация устаревшая, но зато никаких блокировок
PHP:
<?
$_POST['ID_Film'] = 195524;
$target_url = "http://www.kinopoisk.ru/level/1/film/".$_POST['ID_Film']."/";// 195524 
$google_search_url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&hl=ru&q=".urlencode($target_url);
    
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $google_search_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$body = curl_exec($ch);
curl_close($ch);

$json = json_decode($body);
//echo '<pre>';
//print_r($json);
//echo '</pre>';

if($json->responseData->results[0]->url == $target_url){
    echo file_get_contents($json->responseData->results[0]->cacheUrl);
}else{
    echo 'not cached';
};
?>
 
А что, например, делать с паттернами, если код страниц постоянно меняется? Блокировку, скажем, мы успешно миновали. Любой из вышепредставленных методов вполне себе самодостаточен. Из кэша, кстати, выгодней инфу вытаскивать, чем постоянно перед инициализацией делать запросы на авторизацию :eek:

Сколько не пыталась сделать универсально, - ничего не меняется: проходит неделя, и что-то где-то падает в строках. :mad:

Набросала Для просмотра ссылки Войди или Зарегистрируйся, но уже, наверное, не актуально. Поправила новый баг с обложкой.. Вот бы кто помог в разработке..
 
Представил бы ктонить сам код авторизации на кинопоиске (только авторизации, сам парсер имеется, вставим в начало парсера авторизацию и нормально будет). :)
 
PHP:
<?php
$ch = curl_init();
$userAgent = "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US)";
$target_url = "http://www.kinopoisk.ru/level/30/";
$username = urlencode("username");
$password = urlencode("password");
$cookie = dirname(__FILE__).'/cookie.txt';
$post = "shop_user%5Blogin%5D=$username&shop_user%5Bpass%5D=$password&shop_user%5Bmem%5D=on&auth=%E2%EE%E9%F2%E8+%ED%E0+%F1%E0%E9%F2";
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
curl_setopt($ch, CURLOPT_URL,$target_url);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_TIMEOUT, 100);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
$html = curl_exec($ch);
//echo $html;
if (!$html) {
    echo "<br />cURL error number:" .curl_errno($ch);
    echo "<br />cURL error:" . curl_error($ch);
    exit;
}
 
Помнтся парсил я один сайт в базу примерно 700к страниц, так если скрипт пускал с сервака, он банился видимо анти DD0s срабатывал, а если с домашней тачки, то нормуль парсил
 
А что, например, делать с паттернами, если код страниц постоянно меняется? Блокировку, скажем, мы успешно миновали. Любой из вышепредставленных методов вполне себе самодостаточен. Из кэша, кстати, выгодней инфу вытаскивать, чем постоянно перед инициализацией делать запросы на авторизацию :eek:
Сколько не пыталась сделать универсально, - ничего не меняется: проходит неделя, и что-то где-то падает в строках. :mad:
Набросала Для просмотра ссылки Войди или Зарегистрируйся, но уже, наверное, не актуально. Поправила новый баг с обложкой.. Вот бы кто помог в разработке..

а исходничек можно?
кой-чего думаю помогу.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху