Проверка домена на наличие в web.archive

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

Модераторы: latteo
  1. Ruslanych

    Ruslanych Создатель

    Регистр.:
    17 фев 2009
    Сообщения:
    37
    Симпатии:
    8
    Подскажите, как php скриптом массово проверить домены на наличие в web.archive, желательно с количеством сохраненных там страниц?

    Может у кого готовый скрипт есть?
     
  2. Красавчег

    Красавчег Завсегдатай

    Регистр.:
    15 мар 2010
    Сообщения:
    902
    Симпатии:
    298
    У меня что-то такое было, но сейчас вебархив поменял у себя там полностью интерфейс, пути и т.п., и это не работает, так что наверное лучше у кого-то скрипт заказать.
     
  3. Ruslanych

    Ruslanych Создатель

    Регистр.:
    17 фев 2009
    Сообщения:
    37
    Симпатии:
    8
    Заказать то можно, но хочется сделать самому...
    Я же не парсер хочу сделать, а элементарную проверку наличия сайта в архиве.
     
  4. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    699
    для одного домена вот если надо много особого труда дописать не составит я думаю
    PHP:
    <?php 
    $domen 
    'http://google.com'//подопытный домен

    function get_web_page$url )
    {
      
    $uagent "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8";

      
    $ch curl_init$url );

      
    curl_setopt($chCURLOPT_RETURNTRANSFER1);  // возвращает веб-страницу
      
    curl_setopt($chCURLOPT_REFERER,"http://google.com");
      
    curl_setopt($chCURLOPT_HEADER0);           // не возвращает заголовки
      
    curl_setopt($chCURLOPT_FOLLOWLOCATION10);   // переходит по редиректам
      
    curl_setopt($chCURLOPT_ENCODING"");        // обрабатывает все кодировки
      
    curl_setopt($chCURLOPT_USERAGENT$uagent);  // useragent
      
    curl_setopt($chCURLOPT_CONNECTTIMEOUT10); // таймаут соединения
      
    curl_setopt($chCURLOPT_TIMEOUT10);        // таймаут ответа
      
    curl_setopt($chCURLOPT_MAXREDIRS10);       // останавливаться после 10-ого редиректа
       
      
    $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;
    }
    $url 'http://wayback.archive.org/web/*/'.$domen.'*';
    $result get_web_page$url );
    $content $result['content'];
    //echo $content;
    preg_match('/<h2 class=\"green\">(.*?)URLs have been captured for this domain\.<\/h2>/si',$content,$match);
    if(isset(
    $match[1])) {$pages $match[1]; 
    echo 
    'В вебархиве '.trim($pages).' страниц сайта<br>';}
    else {echo 
    'Такого сайта нет в архиве<br>';}
     
    Ruslanych нравится это.