php curl новости с яши и гугля

Discussion in 'PHP' started by bar, 30 Jul 2012.

  1. bar

    bar New Member

    Joined:
    30 Jul 2012
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Доброго дня!

    Пытаюсь CRON-ом собирать новости с поисковиков. Яша и гугль определяют меня как бота. RSS отдают, а поисковый контент "прячут".
    Подскажите, что не хватает в curl опциях?
    PHP:
    curl_setopt( $curl, CURLOPT_URL, $url );
    curl_setopt( $curl, CURLOPT_FILE, $fp );//в файл кладу
        
    curl_setopt( $curl, CURLOPT_TIMEOUT, $timeout );
    curl_setopt( $curl, CURLOPT_COOKIEFILE, $cookies );
    curl_setopt( $curl, CURLOPT_COOKIEJAR, $cookies );
    curl_setopt( $curl, CURLOPT_HEADER, 0 );
    curl_setopt( $curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)");
    curl_setopt( $curl, CURLOPT_FOLLOWLOCATION, 1 );
     
  2. DJ4J

    DJ4J Member

    Joined:
    23 Aug 2009
    Messages:
    2
    Likes Received:
    53
    Reputations:
    1
    А там и не нужно вообще ничего слать.Наоборот.
    PHP:
     $ch = curl_init("http://news.yandex.ru");
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    $result=curl_exec($ch);
    curl_close($ch);
    echo 
    $result;
     
  3. DJ4J

    DJ4J Member

    Joined:
    23 Aug 2009
    Messages:
    2
    Likes Received:
    53
    Reputations:
    1
    Аналогично, собственно, и у гугла.Посмотри сперва в следующий раз, какие данные передаются.Ни одного POST запроса не было при загрузке новостей яши и гугла.
    Для firefox есть хороший плагин HttpFox, он поможет определить, что нужно передавать скрипту(или не передавать).
     
  4. bar

    bar New Member

    Joined:
    30 Jul 2012
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Благодарю! Работает. Попробовал с локала и с сервера. Убрал только строчку с CURLOPT_USERAGENT.

    Где то я ещё тупанул.
    Может при отладке превысил некий лимит однотипных запросов.
    Испытывать судьбу не буду. Пусть пару дней скрипт поработает.