Adatum
Фев
20
2013
PHP /

Анализ сайта, проверка тИЦ, позиции в Яндекс и Google на php.

seo

Существует множество сайтов-сервисов по проверке Seo-статуса сайта, проверке позиции в Яндекс и Google, наличия сайта в каталогах, статуса Яндекс тИЦ и Google PR.
А так ли сложено самому написать подобный сервис, сегодня покажу вам как написать подобный сервис за пару часов.

Демо Скачать


<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" >					
		<h2>Seo анализ сайта</h2>
		<br>		
		<label >Адрес сервера http://</label>
		<input type="text" name="address" value="" size="36" />
		<br>
		<input class="button default" type="submit" name="submit" value="Проанализировать"><br>
</form>


 <?php
if(isset($_POST['submit'])) 
{ 
				error_reporting(0);
				$link = $_POST['address'];		
				echo "<h4>Проиндексированные страницы</h4><br>";

                                 // Количество ссылок в Yahoo.
				$url = 'http://www.alltheweb.com/search?q=site:' . $link;
				$v = file_get_contents($url);
				$fill='/\<span id="resultCount">([0-9,]+)\<\/span>/si';
				preg_match($fill, $v, $r);
				echo "<img src='yahoo.png' align='absmiddle'> Yahoo: ".$r[1]."<br>";

				 // Количество ссылок в Bing.	
				$url = 'http://www.bing.com/search?q=site:' . $link;
				$v = file_get_contents($url);
				$fill='/\<span class="sb_count" id="count">(.*?)\<\/span>/si';
				preg_match($fill, $v, $r);
				echo "<img src='bing.png' align='absmiddle'> Bing: ".preg_replace("/[^0-9]/", '', $r[0])."<br>";
			
			      // Количество ссылок в Google.
				$url = 'http://www.google.ru/search?q=allinurl:'.$link.'/+site:' . $link;
				$v = file_get_contents($url);
				$fill='/\<div id="resultStats">(.*?)\<\/div>/si';
				preg_match($fill, $v, $r);
				echo "<img src='google.png' align='absmiddle'> Google: ".preg_replace("/[^0-9]/", '', $r[0])."<br>";

				 // Наличие в каталоге mail.ru.	
				$url = 'http://search.list.mail.ru/?q=' . $link;
				$v = file_get_contents($url);
				$fill='/\<b class="i">(.*?)\<\/b>/si';
				preg_match($fill, $v, $r);
				if ($r[0]) {echo "<img src='mail.png' align='absmiddle'>Каталог Mail.ru: Есть<br>";} else {echo "<img src='mail.png' align='absmiddle'>Каталог Mail.ru: Нет<br>";};
					
	                        // Наличие в каталоге Yahoo.	
				$url = 'http://dir.search.yahoo.com/search?p=' . $link;
				$v = file_get_contents($url);
				$fill='/\<span class="refiner_count">(.*?)\<\/span>/si';
				preg_match($fill, $v, $r);
				if ($r[0]) {echo "<img src='yahoo.png' align='absmiddle'> Каталог Yahoo: Есть<br>";} else {echo "<img src='mail.png' align='absmiddle'>Каталог Yahoo: Нет<br>";};
					
				 // Определение Alexa Traffic Rank.	
				$url = 'http://www.alexa.com/siteinfo/'.$link;
				$v = file_get_contents($url);
				$fill='/\<div class="data up">(.*?)\<\/div>/si';
				preg_match($fill, $v, $r);
				$tou = preg_replace("/[^0-9]/", '', $r[0]);
				echo "<img src='alexa.png' align='absmiddle'> Alexa Traffic Rank: ".substr($tou, 1)."<br>";
					
				 // Определение Яндекс тИЦ.
				$url = 'http://'.$link;
				$str=file('http://bar-navig.yandex.ru/u?ver=2&show=32&url='.$url);
				if ($str==false) {$ans=false;} 
				else {$is_find=preg_match("/value=\"(.\d*)\"/", join("",$str), $tic);  if ($is_find<1) {$ans=0;} else {$ans=$tic[1];}	}
				echo "<img src='yandex.png' align='absmiddle'> Яндекс тИЦ: ".$ans."<br>";	
		
				echo "<br><h4>Ip адреса сайта</h4><br>";
		
		               // Определение IP адресов сервера.
				$parsed_url = parse_url( $url);
				foreach(gethostbynamel($parsed_url['host']) as $ip)
				echo "<img src='ip.png' align='absmiddle'> ".$ip, "\n"."<br>";
		
		}		
?>


Как видите довольно просто, сначала получаем содержимое страницы php функцией file_get_contents в виде одной строки, далее выполняем проверку на соответствие регулярному выражению функцией preg_match. И выводим на экран. Вот и все! Если вас заинтересовала статья или хотите продолжения пишите мне!

Источник урока: http://www.adatum.ru
Автор: Сергоманов Дмитрий

Похожие статьи

Оставить комментарий

*