Парсер доменфорум ссылки..

Discussion in 'PHP' started by mail156, 24 Sep 2019.

  1. mail156

    mail156 Banned

    Joined:
    28 Sep 2018
    Messages:
    467
    Likes Received:
    358
    Reputations:
    0
    Как выдернуть все ссылки, со страницы:
    https://domenforum.net/forumdisplay.php?f=16

    Code:
    //Функция для работы с CURL
    function curl($url, $postdata='', $cookie='', $proxy=''){
        $uagent = "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16";
      
        $ch = curl_init( $url );
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);   // возвращает веб-страницу
        curl_setopt($ch, CURLOPT_HEADER, 0);           // возвращает заголовки
        @curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);   // переходит по редиректам
        curl_setopt($ch, CURLOPT_ENCODING, "");        // обрабатывает все кодировки
        curl_setopt($ch, CURLOPT_USERAGENT, $uagent);  // useragent
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);        // таймаут ответа
        curl_setopt($ch, CURLOPT_MAXREDIRS, 10);       // останавливаться после 10-ого редиректа
        if(!empty($postdata))
        {
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
        }
        if(!empty($cookie))
        {
            //curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/2.txt');
            //curl_setopt($ch, CURLOPT_COOKIEFILE,$_SERVER['DOCUMENT_ROOT'].'/2.txt');
        }
        $content = curl_exec( $ch );
        $err     = curl_errno( $ch );
        $errmsg  = curl_error( $ch );
        $header  = curl_getinfo( $ch );
        curl_close( $ch );
    
        $header['errno']   = $err;
        $header['errmsg']  = $errmsg;
        $header['content'] = $content;
      
    
        return $header;
    }
    //Простой пример парсера сайта, код авторский ^^,
    $result = curl("https://domenforum.net/forumdisplay.php?f=16"); //Парсю сам сайт
    
    ?>
    
    так парсит все ссылки...а как парсить еще названия тем форумов..(названия ссылок)...

    и как быть с кодировкой??

     
  2. JBB

    JBB New Member

    Joined:
    24 Feb 2020
    Messages:
    9
    Likes Received:
    2
    Reputations:
    0
    тот сайт имеет кодировку win1251, просто перегони ее в utf8:
    $result = iconv('windows-1251', 'UTF-8', $result);
     
    people2people likes this.