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

Тема в разделе "PHP", создана пользователем Joker84, 15 янв 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Joker84

    Joker84 Постоялец

    Регистр.:
    8 авг 2007
    Сообщения:
    68
    Симпатии:
    2
    Добрый день, немогу понять в чем проблема. написал парсинг с использованием curl
    PHP:
            $userAgent "Opera/9.10 (Windows NT 5.1; U; ru)";
            
    $target_url "http://www.kinopoisk.ru/level/1/film/".$_POST['ID_Film'];// 195524

            
    $ch curl_init();

            
    curl_setopt($chCURLOPT_USERAGENT$userAgent);
            
    curl_setopt($chCURLOPT_URL,$target_url);
            
    curl_setopt($chCURLOPT_FAILONERRORtrue);
            
    curl_setopt($chCURLOPT_FOLLOWLOCATIONtrue);

            
    curl_setopt($chCURLOPT_RETURNTRANSFER,true);
            
    curl_setopt($chCURLOPT_TIMEOUT100);

            
    $html curl_exec($ch);
            echo 
    $html;
            if (!
    $html) {
            echo 
    "<br />cURL error number:" .curl_errno($ch);
            echo 
    "<br />cURL error:" curl_error($ch);
            exit;
            }

    Дальше идет обработка полученного HTML кода 
    Парсинг все благополучно работал. но вот пару дней назад перестал, и выдает

    PHP:
    cURL error number:0
    cURL error
    :

    Подскажите в чем может быть проблема
     
    Stripe нравится это.
  2. /Montana

    /Montana Постоялец

    Регистр.:
    28 май 2008
    Сообщения:
    119
    Симпатии:
    6
    У меня на target'е 404 выдаёт вообще, попробую с твоим скриптом поигратся, попробуй тупо url смени.
     
  3. Joker84

    Joker84 Постоялец

    Регистр.:
    8 авг 2007
    Сообщения:
    68
    Симпатии:
    2
    возможно что в листинге там в URL стоит .$_POST['ID_Film']

    за место .$_POST['ID_Film'] укажите какой нибуть ID фильма например 195524
     
  4. mavgust

    mavgust Писатель

    Регистр.:
    28 июн 2007
    Сообщения:
    5
    Симпатии:
    0
    Включи куки и будет тебе счастье
    curl_setopt($ch, CURLOPT_COOKIEJAR, 'D:\sites\test\test_cockies.jar');
    curl_setopt($ch, CURLOPT_COOKIEFILE, 'D:\sites\test\test_cockies.jar');
    curl_setopt($ch, CURLOPT_COOKIESESSION, true);
     
  5. a_smith

    a_smith

    Регистр.:
    4 дек 2008
    Сообщения:
    261
    Симпатии:
    54
    А полный код парсера можно выложить? Для ознакомительных целей так сказать )
     
  6. PocketDevil

    PocketDevil Постоялец

    Регистр.:
    26 янв 2008
    Сообщения:
    92
    Симпатии:
    160
    Stripe нравится это.
  7. ArS-design

    ArS-design Писатель

    Регистр.:
    8 июл 2008
    Сообщения:
    5
    Симпатии:
    5
    Вот здесь есть рабочие версии
     
    Stripe и pslava нравится это.
  8. alextet

    alextet Создатель

    Регистр.:
    22 мар 2007
    Сообщения:
    27
    Симпатии:
    2
    Кинопоиск специально блокирует IP с которых очень часто идут запросы, очень хорошо определяет робот вы или пользователь.
    Поэтому используйте сеть прокси-серверов - TOR.
     
  9. -=Xardas=-

    -=Xardas=-

    Регистр.:
    17 сен 2008
    Сообщения:
    250
    Симпатии:
    58
    Парси с использоватеним Snoopy, используя логин и пароль, тогда банить небудет. :)
     
  10. Ammy

    Ammy Создатель

    Регистр.:
    29 авг 2009
    Сообщения:
    10
    Симпатии:
    0
    Регистрируемся, запоминаем пароль и логин, пишем CURL сценарий инициализации $url страницы авторизации, смотрим в код формы, разбиваем на: "shop_user[login]", "shop_user[pass]", экшн форму - "auth_form", и кнопку с именем "войти на сайт". Передаём всё это CURL POST методом. При желании и в целях экономии ресурсо-запросов проводим манипуляции с сохранением кукии, чтобы не посылать лишний раз запросы в удвоенном размере.
     
Статус темы:
Закрыта.