Advertisement
zero50x

ГК CURL 2 Внеш и внутр. ссыл.

Apr 15th, 2014
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.67 KB | None | 0 0
  1. <?
  2. if (isset ($_REQUEST["all_url"]))
  3. {
  4.     $res = $_REQUEST["all_url"];
  5.     $res = trim($res);
  6.     $res = explode("\n", $res);
  7.    
  8.     // начало работы с каждым адресом поочереди
  9.     foreach ($res as $key => $url) {
  10.         $home_site = parse_url($url);
  11.         $home_site = $home_site['host']; // URL адреса по которому ищем ссылки
  12.        
  13.         /*
  14.         $ch = curl_init (); // инициализация
  15.         curl_setopt ($ch , CURLOPT_URL , $url); // адрес страницы для скачивания
  16.         curl_setopt ($ch , CURLOPT_USERAGENT , "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU; rv:1.7.12) Gecko/20050919 Firefox/1.0.7"); // каким браузером будем прикидыватьсяs
  17.         curl_setopt ($ch , CURLOPT_RETURNTRANSFER , 1 ); // нам нужно вывести загруженную страницу в переменную
  18.         $content = curl_exec($ch); // скачиваем страницу
  19.         curl_close($ch); // закрываем соединение
  20.         */
  21.         $content = file_get_contents($url);
  22.         if ($content) {
  23.             // поиск ссылок в исходном коде
  24.             $result = preg_match_all("/<[Aa][ \r\n\t]{1}[^>]*[Hh][Rr][Ee][Ff][^=]*=[ '\"\n\r\t]*([^ \"'>\r\n\t#]+)[^>]*>/",$content, $m);
  25.             if ($result) {
  26.                 $count_url = count($m[1]);
  27.                 $i = 0;
  28.                 $j = 0;
  29.                 $d = 1;
  30.                 $count = 0;
  31.                 $count2 = 0;
  32.                 while($i<$count_url) {
  33.                     //$str1 = stristr($m[1][$i],"http://");
  34.                     //$str2 = stristr($m[1][$i],"www.");
  35.                     //$str3 = stristr($m[1][$i],$home_site);      
  36.                     echo ++$j.". ".$m[1][$i]."<br>";
  37.                     // поиск внешних ссылок
  38.                     if ((stristr($m[1][$i],"http://") || stristr($m[1][$i],"www.")) && !stristr($m[1][$i],$home_site)) {
  39.                         $count = $d++;
  40.                         //echo "------->".$m[1][$i]."<br>";
  41.                     }
  42.                     $i++;
  43.                 }              
  44.             $count2 = $count_url - $count;
  45.             echo "<br><b>".$url."<br></b> Внешних: ".$count.". ";
  46.             echo "Внутренних: ".$count2.".<br>------------------------------------<br>";  
  47.             }
  48.             else {echo "Не получены ссылки с сайта <b>".$url."</b><br><br>";}
  49.         }
  50.         else {echo "Не получен исходный код с сайта <b>".$url."</b><br><br>";}
  51.     }
  52.  
  53. }      
  54.    
  55.  
  56. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement