Anasayfa > Hazır Kodlar > PHP > Sayfanin Google PageRank Degerini Ögrenme

Sayfanin Google PageRank Degerini Ögrenme




<?php

/*

    This code is released unto the public domain

*/

header("Content-Type: text/plain; charset=utf-8");

define('GOOGLE_MAGIC', 0xE6359A60);

//unsigned shift right

function zeroFill($a, $b)

{
    $z = hexdec(80000000);
    //echo $z;

        if ($z & $a)

        {
            $a = ($a>>1);

            $a &= (~$z);

            $a |= 0x40000000;

            $a = ($a>>($b-1));

        }
        else

        {
            $a = ($a>>$b);

        }
        return $a;

}


function mix($a,$b,$c) {
  $a -= $b; $a -= $c; $a ^= (zeroFill($c,13));

  $b -= $c; $b -= $a; $b ^= ($a<<8);

  $c -= $a; $c -= $b; $c ^= (zeroFill($b,13));

  $a -= $b; $a -= $c; $a ^= (zeroFill($c,12));

  $b -= $c; $b -= $a; $b ^= ($a<<16);

  $c -= $a; $c -= $b; $c ^= (zeroFill($b,5));

  $a -= $b; $a -= $c; $a ^= (zeroFill($c,3));  

  $b -= $c; $b -= $a; $b ^= ($a<<10);

  $c -= $a; $c -= $b; $c ^= (zeroFill($b,15));

  

  return array($a,$b,$c);

}

function GoogleCH($url, $length=null, $init=GOOGLE_MAGIC) {
    if(is_null($length)) {
        $length = sizeof($url);

   

    }
    $a = $b = 0x9E3779B9;

   

    $c = $init;


    $k = 0;

    $len = $length;

    while($len >= 12) {
        $a += ($url[$k+0] +($url[$k+1]<<8) +($url[$k+2]<<16) +($url[$k+3]<<24));

        $b += ($url[$k+4] +($url[$k+5]<<8) +($url[$k+6]<<16) +($url[$k+7]<<24));

        $c += ($url[$k+8] +($url[$k+9]<<8) +($url[$k+10]<<16)+($url[$k+11]<<24));

        $mix = mix($a,$b,$c);

        $a = $mix[0]; $b = $mix[1]; $c = $mix[2];

        $k += 12;

        $len -= 12;

    }

    $c += $length;

    switch($len)              /* all the case statements fall through */

    {
        case 11: $c+=($url[$k+10]<<24);

        case 10: $c+=($url[$k+9]<<16);

        case 9 : $c+=($url[$k+8]<<8);

          /* the first byte of c is reserved for the length */

        case 8 : $b+=($url[$k+7]<<24);

        case 7 : $b+=($url[$k+6]<<16);

        case 6 : $b+=($url[$k+5]<<8);

        case 5 : $b+=($url[$k+4]);

        case 4 : $a+=($url[$k+3]<<24);

        case 3 : $a+=($url[$k+2]<<16);

        case 2 : $a+=($url[$k+1]<<8);

        case 1 : $a+=($url[$k+0]);

         /* case 0: nothing left to add */

    }
   

    $mix = mix($a,$b,$c);

    //echo $mix[0];

    /*-------------------------------------------- report the result */

    return $mix[2];

}

//converts a string into an array of integers containing the numeric value of the char

function strord($string) {
    for($i=0;$i<strlen($string);$i++) {
        $result[$i] = ord($string{$i});
    }
    return $result;

}
// http://www.example.com/ - Checksum: 6540747202

$url = $_GET['url'];
//print("url:\t{$_GET['url']}\n");

$ch = "6" . GoogleCH(strord("info:" . $url));


$fp = fsockopen("www.google.com", 80, $errno, $errstr, 30);
if (!$fp) {
   echo "$errstr ($errno)<br />\n";
} else {
   $out = "GET /search?client=navclient-auto&ch=". $ch .  "&features=Rank&q=info:" . $url . " HTTP/1.1\r\n";
   $out .= "Host: www.google.com\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);
          echo "<body bgcolor=#e6e6e6>";
          echo "The page rank for $url is $pagerank";
          echo "<img src=pr$pagerank.gif>";
     }
   }
   fclose($fp);
}

?>


Bu makale hakkında ek bilgi eklemek için buraya tıklayınız

Bu makalenin yazar yada kaynağını bildirmek için tıklayınız.

Digg this Post! Add Post to del.icio.us Bookmark Post in Technorati Furl this Post!
Eklenme tarihi: 12-8-2006  Okunma: 3686

Ekleyen:  MedCezir

Bu Makaleye Verilen Puan:    Bu makaleye puan verilmemiş.
Bu Makaleye Puan Ver  

Bölüm Başlık Kullanıcı Yorumları


Osman Osman

Tarih: 4-10-2006 4:37pm

Bu kodlar çalışmıyor..

ahmee4 ahmee4

Tarih: 24-4-2007 10:53pm

181. satırda hata veriyo..

editör editör

Tarih: 24-4-2007 11:53pm

kodlar güncellendi şuanda çalışıyor en sonda echo dan sonra ; eklememiş sorun ondan kaynaklanıyordu

Reklam Netinternet
Bazı hakları saklıdır: İçeriğin editör ve yazarlarımız tarafından oluşturulan kısımları ve site tasarımının hakkı saklıdır.  Bu sayfa en iyi 1280x1024 ve 1024x768 çözünürlükte izlenir.
Powered by BilgiPortal v2.2
Emlak Yorumlar Müzik estetik