pagerank kontrolü yapan php script elinde olan varsa veya piyasadaki pagerank sitelerinin pagerank kontrolünü nasıl yaptığını (hangi kaynaktan pagerank verisini alıyorlar) bilen varsa, bilgilerini açıklamaya davet ediyorum 
Tamamen bundan ibaret. Tabi scriptlerde proxy sunucuda kullanıyoruz. Ama sen dersen ben günde 40 bin domain sorgulayacagım bu script seni çok yavaşlatır ve zorlar. Bunun için masa üstü uygulamalar var satılıyor.Masa üstü uygulamaları tavsiye ederim.Ama ben kendi halimde günlük 5bin 10bin sorgu yapacam dersen script uygundur.http://pr.blogflux.com/prx.php?s=http://".$uri[host]
Tamamen bundan ibaret. Tabi scriptlerde proxy sunucuda kullanıyoruz. Ama sen dersen ben günde 40 bin domain sorgulayacagım bu script seni çok yavaşlatır ve zorlar. Bunun için masa üstü uygulamalar var satılıyor.Masa üstü uygulamaları tavsiye ederim.Ama ben kendi halimde günlük 5bin 10bin sorgu yapacam dersen script uygundur.
aslında api yapmayı düşünüyorum ama şimdilik vaktim yok....
http://www.ysfkc.com/dosyalar/siteinfo?i=googleP&u=ysfkc.com
i parametre değerleri:
googleP : PR
googleI : İndex ( büyük ı harfi )
googleB: Backlink
alexa: Alexa Rank
dmoz: Dmoz Kaydı Kontrolü
u parametresi ise url dir
örnek olarak: http://toolbarqueries.google.com/se...es/Download-URL-shortener-by-NetShortcut.html
bir site buradan merge ediyordu.
$googlehost='toolbarqueries.google.com';
$googleua='Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5';
function StrToNum($Str, $Check, $Magic) {
$Int32Unit = 4294967296; // 2^32
$length = strlen($Str);
for ($i = 0; $i < $length; $i++) {
$Check *= $Magic;
if ($Check >= $Int32Unit) {
$Check = ($Check - $Int32Unit * (int) ($Check / $Int32Unit));
//if the check less than -2^31
$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 getch($url) { return CheckHash(HashURL($url)); }
function getpr($url) {
global $googlehost,$googleua;
$ch = getch($url);
$fp = fsockopen($googlehost, 80, $errno, $errstr, 30);
if ($fp) {
$out = "GET /search?client=navclient-auto&ch=$ch&features=Rank&q=info:$url HTTP/1.1\r\n";
$out .= "User-Agent: $googleua\r\n";
$out .= "Host: $googlehost\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{
$pr=substr($data, $pos + 9);
$pr=trim($pr);
$pr=str_replace("\n",'',$pr);
return $pr;
}
}
fclose($fp);
}
}
function pagerank($url,$width=40,$method='image') {
if (!preg_match('/^(http:\/\/)?([^\/]+)/i', $url)) { $url='http://'.$url; }
$pr=getpr($url);
if(!$pr)
{
$pr=0;
}
$pagerank="PageRank: $pr/10";
//Resim Bas
if ($method == 'image') {
$prpos=$width*$pr/10;
$prneg=$width-$prpos;
$html=$pr;
}
//Div Class bas
if ($method == 'style') {
$prpercent=100*$pr/10;
$html='<div style="position: relative; width: '.$width.'px; padding: 0; background: #D9D9D9;"><strong style="width: '.$prpercent.'%; display: block; position: relative; background: #5EAA5E; text-align: center; color: #333; height: 8px; line-height: 8px;"><span></span></strong></div>';
}
$out=''.$html.'</div>
';
return $out;
}
if ((!isset($_POST['url'])) && (!isset($_GET['url'])))
{
echo '<div id="container">
<form id="fm-form" method="post" action="" >
<fieldset>
<legend>PageRank Check</legend>
<div class="fm-opt">
<label for="fm-eposta">Domain:</label>
<input name="url" id="url" type="text" size="20" />
</div>
</fieldset>
<fieldset>
<div id="fm-submit" class="fm-req">
<input name="Submit" value="PR Check" type="submit" /> </form>
</div>
</div>';
}
if (isset($_REQUEST['url'])) { echo pagerank($_REQUEST['url']); }
Buldum, daha sonra arayan olursa kaynak olsun.
Direk veriyi text olarak yazdırıyor. Gayet kullanışlı.
PHP:$googlehost='toolbarqueries.google.com'; $googleua='Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5'; function StrToNum($Str, $Check, $Magic) { $Int32Unit = 4294967296; // 2^32 $length = strlen($Str); for ($i = 0; $i < $length; $i++) { $Check *= $Magic; if ($Check >= $Int32Unit) { $Check = ($Check - $Int32Unit * (int) ($Check / $Int32Unit)); //if the check less than -2^31 $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 getch($url) { return CheckHash(HashURL($url)); } function getpr($url) { global $googlehost,$googleua; $ch = getch($url); $fp = fsockopen($googlehost, 80, $errno, $errstr, 30); if ($fp) { $out = "GET /search?client=navclient-auto&ch=$ch&features=Rank&q=info:$url HTTP/1.1\r\n"; $out .= "User-Agent: $googleua\r\n"; $out .= "Host: $googlehost\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{ $pr=substr($data, $pos + 9); $pr=trim($pr); $pr=str_replace("\n",'',$pr); return $pr; } } fclose($fp); } } function pagerank($url,$width=40,$method='image') { if (!preg_match('/^(http:\/\/)?([^\/]+)/i', $url)) { $url='http://'.$url; } $pr=getpr($url); if(!$pr) { $pr=0; } $pagerank="PageRank: $pr/10"; //Resim Bas if ($method == 'image') { $prpos=$width*$pr/10; $prneg=$width-$prpos; $html=$pr; } //Div Class bas if ($method == 'style') { $prpercent=100*$pr/10; $html='<div style="position: relative; width: '.$width.'px; padding: 0; background: #D9D9D9;"><strong style="width: '.$prpercent.'%; display: block; position: relative; background: #5EAA5E; text-align: center; color: #333; height: 8px; line-height: 8px;"><span></span></strong></div>'; } $out=''.$html.'</div> '; return $out; } if ((!isset($_POST['url'])) && (!isset($_GET['url']))) { echo '<div id="container"> <form id="fm-form" method="post" action="" > <fieldset> <legend>PageRank Check</legend> <div class="fm-opt"> <label for="fm-eposta">Domain:</label> <input name="url" id="url" type="text" size="20" /> </div> </fieldset> <fieldset> <div id="fm-submit" class="fm-req"> <input name="Submit" value="PR Check" type="submit" /> </form> </div> </div>'; } if (isset($_REQUEST['url'])) { echo pagerank($_REQUEST['url']); }
Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.