[Ищу] Парсер w3c

Тема в разделе "SEO Скрипты", создана пользователем 01ssv, 23 мар 2009.

Статус темы:
Закрыта.
  1. 01ssv

    01ssv Постоялец

    Регистр.:
    29 янв 2008
    Сообщения:
    65
    Симпатии:
    5
    Такой скрипт чтобы отдавал для заданной страницы (URL) валидность и число ошибок по W3C
     
  2. ewg777

    ewg777

    Регистр.:
    6 авг 2007
    Сообщения:
    763
    Симпатии:
    321
    file_get_contents + preg_match (php) ;)
     
  3. 01ssv

    01ssv Постоялец

    Регистр.:
    29 янв 2008
    Сообщения:
    65
    Симпатии:
    5
    Какой еще file_get_contents?
    там страницу надо отправлять на валидацию, а это либо снупи либо курл, а возиться времени нет хочется что то готовое взять
     
  4. Inviseble_Demon

    Inviseble_Demon

    Регистр.:
    11 дек 2008
    Сообщения:
    482
    Симпатии:
    350
    PHP:
    <?PHP  
        
    function parse_w3 ($url)
        {

          
    $fp fsockopen('validator.w3.org'80$errno$errstr30);
          if (!
    $fp) echo "Ошибка соединения, code error $errstr ($errno)<br />\n";
          else
          {
            
    $headers "GET /check?uri=$url&charset=%28detect+automatically%29&doctype=Inline&group=0 HTTP/1.0\r\n";
            
    $headers.= "Host: validator.w3.org\r\n";
            
    $headers .= "Connection: Keep-Alive\r\n\r\n";
            
    fwrite($fp$headers);
            
            for (
    $i=0$i<101$i++) 
            {
    $line .= fgets($fp1024);} 
            
    fclose($fp);  
          }
          
        
    preg_match("#<h2.*>(.*)</h2>.*<td colspan=\"2\".*>(.*)<!-- this case where#smi",$line,$pars);
        
    $out['0']=$pars[1];
        
    $out['1']=$pars[2];
            
            return (
    $out);
        }

    $url='http://google.ru/';
    print_r(parse_w3($url));
    ?>
    preg_match сам поправиш... писал на отшебись.
    На file_get_contents написать можно ! НО ЭТО не целесобразно !!! Пока он скачает эту страницу может столько времени пройти....
    А на сокетах я читаю только первые 100 строк.
     
    01ssv нравится это.
Статус темы:
Закрыта.