Нужен скрипт SEO-анализа сайта

12
skAmZ
На сайте с 04.09.2009
Offline
122
#11

Пр страницы, для получения пр сайта указывай главную страницу. Вызывать функцию GetPageRank


function StrToNum($Str, $Check, $Magic)
{
$Int32Unit = 4294967296;

$length = strlen($Str);
for ($i = 0; $i < $length; $i++) {
$Check *= $Magic;

if ($Check >= $Int32Unit) {
$Check = ($Check - $Int32Unit * (int) ($Check / $Int32Unit));

$Check = ($Check < -2147483648) ? ($Check + $Int32Unit) : $Check;
}
$Check += ord($Str{$i});
}
return $Check;
}
function HashURL($String)
{
$Check1 = StrToNum($String, 0x1505, 0x21);
$Check2 = StrToNum($String, 0, 0x1003F);

$Check1 >>= 2;
$Check1 = (($Check1 >> 4) & 0x3FFFFC0 ) | ($Check1 & 0x3F);
$Check1 = (($Check1 >> 4) & 0x3FFC00 ) | ($Check1 & 0x3FF);
$Check1 = (($Check1 >> 4) & 0x3C000 ) | ($Check1 & 0x3FFF);

$T1 = (((($Check1 & 0x3C0) << 4) | ($Check1 & 0x3C)) <<2 ) | ($Check2 &
0xF0F );
$T2 = (((($Check1 & 0xFFFFC000) << 4) | ($Check1 & 0x3C00)) << 0xA) |
($Check2 & 0xF0F0000 );

return ($T1 | $T2);
}
function CheckHash($Hashnum)
{
$CheckByte = 0;
$Flag = 0;

$HashStr = sprintf('%u', $Hashnum) ;
$length = strlen($HashStr);

for ($i = $length - 1; $i >= 0; $i --) {
$Re = $HashStr{$i};
if (1 === ($Flag % 2)) {
$Re += $Re;
$Re = (int)($Re / 10) + ($Re % 10);
}
$CheckByte += $Re;
$Flag ++;
}

$CheckByte %= 10;
if (0 !== $CheckByte) {
$CheckByte = 10 - $CheckByte;
if (1 === ($Flag % 2) ) {
if (1 === ($CheckByte % 2)) {
$CheckByte += 9;
}
$CheckByte >>= 1;
}
}

return '7'.$CheckByte.$HashStr;
}
function GetPageRank($url) {

$fp = fsockopen("toolbarqueries.google.com", 80, $errno, $errstr, 30);
if (!$fp) {

} else {
$out = "GET /search?client=navclient-auto&ch=".CheckHash(HashURL($url))."&features=Rank&q=info:".$url."&num=100&filter=0 HTTP/1.1\r\n";
$out .= "Host: toolbarqueries.google.com\r\n";
$out .= "User-Agent: Mozilla/4.0 (compatible; GoogleToolbar 2.0.114-big; Windows XP 5.1)\r\n";
$out .= "Connection: Close\r\n\r\n";

fwrite($fp, $out);


while (!feof($fp)) {
$data = fgets($fp, 128);
$pos = strpos($data, "Rank_");
if($pos === false){} else{
$pagerank = substr($data, $pos + 9);

}
}
fclose($fp);

}
return trim($pagerank);
}

Получение тиц.


function GetYandexTIC($in_url)
{
$url=$in_url;
if(!strpos(' '.$url,'http://'))
{
$url='http://'.$url;
}
$url='http://bar-navig.yandex.ru/u?ver=2&show=32&url='.$url;
$TIC=0;
$in_yaca=false;
$domain='';
if ($fp=@fopen($url,'r'))
{
$_otv = fread($fp, 1024);
fclose($fp);
$otv=$_otv;
$tmp=strpos($otv,'value="');
if($tmp>0)
{
$otv=substr($otv,$tmp+7);
$tmp=strpos($otv, '"');
if($tmp>0)
{
$TIC=substr($otv,0,$tmp);
}
}
$otv=$_otv;
$tmp=strpos($otv,'domain="');
if($tmp>0)
{
$otv=substr($otv,$tmp+8);
$tmp=strpos($otv, '"');
if($tmp>0)
{
$domain=substr($otv,0,$tmp);
}
}
if(strpos($_otv, "<topic title"))
$in_yaca=true;
}
@fclose($fp);
return array($domain, $TIC, $in_yaca);
}

Колчество беков по Yahoo.


function CountBack($_site_url)
{
$site_url=$_site_url;
if(!strpos(' '.$site_url,'http://'))
{
$site_url='http://'.$site_url;
}
$site_url=urlencode($site_url);
$url='http://siteexplorer.search.yahoo.com/search?p='.$site_url.'&bwm=i&bwmo=s&bwmf=s';
$content=file_get_contents($url);
preg_match('/Inlinks \(([0-9,]+)?\)/', $content, $res);
return preg_replace('/,/', '', $res[1]);
}

Надеюсь внедрить его сможете, в крайнем случае пиши в лс.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий