Как сделать чтобы Curl отображал дизайн страницы

Тема в разделе "Как сделать...", создана пользователем zilon, 12 окт 2013.

  1. zilon

    zilon

    Регистр.:
    30 июл 2011
    Сообщения:
    370
    Симпатии:
    147
    делаю паука который по дору ходит страницы генерит, но дизайн не отображается подкажите пжалуста как сделать чтоб отображался :thenks:

    PHP:
    if(isset($_POST['doman']))

    {

    $time $_POST['time'];
    $pages $_POST['pages'];
    $saits $_POST['doman'];
    foreach (
    $saits as $sait)
        {
       
        
    $url $sait;
        
    $ch curl_init();
        
    curl_setopt($chCURLOPT_URL$sait);
        
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
    $user_agent "pauk.php - bot";
        
    curl_setopt($chCURLOPT_USERAGENT$user_agent);
        
    $str curl_exec($ch);
        echo 
    "<h1>вывожу - $url</h1>$str";
        
    curl_close($ch);
            
    preg_match_all("/href=.*html/"$str$links);
            
    $next_url preg_replace("/href=./"''$links[0][1]);
            
    //echo 'http://'.$sait.'/'.$next_url;
            
    $openurl "http://$sait/$next_url";
            
    sleep($time);

            for(
    $i=1;$i<=$pages;$i++)
            {
            
    $url $openurl;
            
    $ch curl_init();
            
    curl_setopt($chCURLOPT_URL$sait);
            
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
            
    $user_agent "pauk.php - bot";
            
    curl_setopt($chCURLOPT_USERAGENT$user_agent);
            
    $str curl_exec($ch);
            echo 
    "<h1>вывожу - $url</h1>$str";
            
    curl_close($ch);
            
    preg_match_all("/href=.*html/"$str$links);
            
    $next_url preg_replace("/href=./"''$links[0][1]);
            
    //echo 'http://'.$sait.'/'.$next_url;
            
    $openurl "http://$sait/$next_url";
            
    sleep($time);
            }

        }

    }
    [​IMG]
     
  2. Genk0

    Genk0

    Регистр.:
    2 июн 2010
    Сообщения:
    10
    Симпатии:
    12
    А тупо в исходный код посмотреть откуда НЕ тянутся стили слабо?!
     
    Sorcus нравится это.
  3. esche

    esche

    Регистр.:
    9 авг 2009
    Сообщения:
    357
    Симпатии:
    242
    Genk0, ну не догадался он..
    zilon, Ткни F12 в браузере, найди вкладку Сеть/Network и посмотри, какие адреса 404 выдают.
    Небось для css-файлов не прописан "паук".
     
  4. zilon

    zilon

    Регистр.:
    30 июл 2011
    Сообщения:
    370
    Симпатии:
    147
    можно, а что с ними делать :oops:

    __

    понял :dead:
     

    Вложения:

    Последнее редактирование: 12 окт 2013
  5. esche

    esche

    Регистр.:
    9 авг 2009
    Сообщения:
    357
    Симпатии:
    242
    Ну, если "паука" делаешь сам, что сделать - должен догадаться.
     
  6. zilon

    zilon

    Регистр.:
    30 июл 2011
    Сообщения:
    370
    Симпатии:
    147
    я догадываюсь что придётся регуляркой из исходного кода вырезать пути до css и до картинок, циклом выводить по очереди, дописав к ним домен, чтоб путь абсолютный был и что то с курлом делать чтобы он их отобразил а что именно с курлом делать? :nezn:
     
  7. esche

    esche

    Регистр.:
    9 авг 2009
    Сообщения:
    357
    Симпатии:
    242
    тоже самое, что и раньше
    Код:
            $openurl = "http://$sait/$next_url";
    
     
  8. zilon

    zilon

    Регистр.:
    30 июл 2011
    Сообщения:
    370
    Симпатии:
    147
    всю голову сломал... кто не будь дайте пожалуйста рабочий код загружающий всё что нужно :thenks::thenks::thenks::thenks::thenks:

    под хайд например если не хотите палить тему...
     
  9. saargh

    saargh Писатель

    Регистр.:
    27 сен 2013
    Сообщения:
    0
    Симпатии:
    0
    Регулярка ниже не претендует на особую изящность, но надеюсь, что поможет направить мысли в нужное русло ;)

    $str = curl_exec($ch);
    $str = preg_replace('/(href\h*=\h*"|src\h*=\h*")[^http:](.+")/imU', '${1}Перейти по ссылке' . $url . '/${2}', $str);
     
  10. zilon

    zilon

    Регистр.:
    30 июл 2011
    Сообщения:
    370
    Симпатии:
    147
    :confused:

    весь интернет облазил, всё только пишут как такое дело провернуть, а код рабочий никто не даёт, как будто все знают как сделать - но никто не делал :alko: