Pagerank Öğrenme Kodu

  • Konuyu başlatan Konuyu başlatan Fex
  • Başlangıç tarihi Başlangıç tarihi

Fex

Öğrenci
Katılım
25 Ekim 2013
Mesajlar
14
Reaksiyon puanı
0
Puanları
0
Merhabalar..Sitenizin Pagerank değerini öğrenmek istiyorsunuz veya sitenizde pagerank değerini sorgulatmak istiyorsunuz..Bunun için Yapmanız gereken bu PHP kodunu alıp istediğiniz yere yapıştırmaktır…Böylece hem Sitenizde Google Pagerank sorgulatırsınız hemde kendi sitenizin pagerank değerini öğrenirsiniz..İlgili yerleri kendinize göre değiştirin.
Not: Bu kodları ben kodlamadım Sadece Wep sitem için arşiv yapmıştım ordan alıp paylaştım.. :)
PHP:
</p><form action="" method="post"><table align="center" style="width: 359px; height: 81px;border: 2px  dashed #000066;"><tr><td  style="background-color: #DDFFFF;width: 57px">URL:</td><td  style="background-color: #DDFFFF;width: 112px">            <input name="url" type="text" style="width: 289px; height: 23px" value="http://"></td></tr><tr><td  style="width: 57px"> </td><td style="width: 112px">        <input name="Submit1" style="width: 133px; height: 29px;" type="submit" value="**** Page Rank"></td></tr></table></form><p><?php<br />if (isset($_POST['url'])){<br />    $pgr=new GooglePageRankChecker;<br />    $url=$_POST['url'];<br />    $rank = $pgr->getRank($url);<br />    echo ‘</p><p style="text-align: center;"><span style="font-size: 20pt;color: #0000FF;    border-style:dotted;border-width: 1px;background-color: #FFFFCC;<br />        "><a rel="nofollow" href="'.$url.'" class="broken_link">‘.$url.’</a></span><br />        <span style="font-size: 18pt;color: #0000FF;border-style:dotted;border-width: 1px;background-color: #FFFFCC;">  The Page Rank is: ’.$rank.’  </span></p><p>    ‘;<br />}</p><p>class GooglePageRankChecker {</p><p>  // Track the instance<br />  private static $instance;</p><p>  // Constructor<br />  function getRank($page) {<br />    // Create the instance, if one isn’t created yet<br />    if(!isset(self::$instance)) {<br />      self::$instance = new self();<br />    }<br />    // Return the result<br />    return self::$instance->check($page);<br />  }</p><p>  // Convert string to a number<br />  function stringToNumber($string,$check,$magic) {<br />    $int32 = 4294967296;  // 2^32<br />      $length = strlen($string);<br />      for ($i = 0; $i < $length; $i++) {<br />          $check *= $magic;<br />          //If the float is beyond the boundaries of integer (usually +/- 2.15e+9 = 2^31),<br />          //  the result of converting to integer is undefined<br />          //  refer to http://www.php.net/manual/en/language.types.integer.php<br />          if($check >= $int32) {<br />              $check = ($check – $int32 * (int) ($check / $int32));<br />              //if the check less than -2^31<br />              $check = ($check < -($int32 / 2)) ? ($check + $int32) : $check;<br />          }<br />          $check += ord($string{$i});<br />      }<br />      return $check;<br />  }</p><p>  // Create a url hash<br />  function createHash($string) {<br />    $check1 = $this->stringToNumber($string, 0×1505, 0×21);<br />      $check2 = $this->stringToNumber($string, 0, 0x1003F);</p><p>    $factor = 4;<br />    $halfFactor = $factor/2;</p><p>      $check1 >>= $halfFactor;<br />      $check1 = (($check1 >> $factor) & 0x3FFFFC0 ) | ($check1 & 0x3F);<br />      $check1 = (($check1 >> $factor) & 0x3FFC00 ) | ($check1 & 0x3FF);<br />      $check1 = (($check1 >> $factor) & 0x3C000 ) | ($check1 & 0x3FFF);  </p><p>      $calc1 = (((($check1 & 0x3C0) << $factor) | ($check1 & 0x3C)) << $halfFactor ) | ($check2 & 0xF0F );<br />      $calc2 = (((($check1 & 0xFFFFC000) << $factor) | ($check1 & 0x3C00)) << 0xA) | ($check2 & 0xF0F0000 );</p><p>      return ($calc1 | $calc2);<br />  }</p><p>  // Create checksum for hash<br />  function checkHash($hashNumber)<br />  {<br />      $check = 0;<br />    $flag = 0;</p><p>    $hashString = sprintf('%u', $hashNumber) ;<br />    $length = strlen($hashString);</p><p>    for ($i = $length - 1;  $i >= 0;  $i –) {<br />      $r = $hashString{$i};<br />      if(1 === ($flag % 2)) {<br />        $r += $r;<br />        $r = (int)($r / 10) + ($r % 10);<br />      }<br />      $check += $r;<br />      $flag ++;<br />    }</p><p>    $check %= 10;<br />    if(0 !== $check) {<br />      $check = 10 – $check;<br />      if(1 === ($flag % 2) ) {<br />        if(1 === ($check % 2)) {<br />          $check += 9;<br />        }<br />        $check >>= 1;<br />      }<br />    }</p><p>    return ’7&#8242;.$check.$hashString;<br />  }</p><p>  function check($page) {</p><p>    // Open a socket to the toolbarqueries address, used by <a title="Google Toolbar" href="http://nedir.doramimarlik.net/tag/google-toolbar/">Google Toolbar</a><br />    $socket = fsockopen(“toolbarqueries.google.com”, 80, $errno, $errstr, 30);</p><p>    // If a connection can be established<br />    if($socket) {<br />      // Prep socket headers<br />      $out = “GET /tbr?client=navclient-auto&ch=”.$this->checkHash($this->createHash($page)).<br />              “&features=Rank&q=info:”.$page.”&num=100&filter=0 HTTP/1.1rn”;<br />      $out .= “Host: toolbarqueries.google.comrn”;<br />      $out .= “User-Agent: Mozilla/4.0 (compatible; GoogleToolbar 2.0.114-big; Windows XP 5.1)rn”;<br />      $out .= “Connection: Closernrn”;</p><p>      // Write settings to the socket<br />      fwrite($socket, $out);</p><p>      // When a response is received…<br />      $result = “”;<br />      while(!feof($socket)) {<br />        $data = fgets($socket, 128);<br />        $pos = strpos($data, “Rank_”);<br />        if($pos !== false){<br />          $pagerank = substr($data, $pos + 9);<br />          $result += $pagerank;<br />        }<br />      }<br />      // Close the connection<br />      fclose($socket);</p><p>      // Return the rank!<br />      return $result;<br />    }<br />  }<br />}<br />?></p>
<p><font face="Tahoma"><a target="_blank" href="http://nedir.doramimarlik.net"><span style="font-size: 8pt; text-decoration: none">PHP kod sitesi</span></a></font>



 

enable

Profesör
Katılım
4 Ağustos 2009
Mesajlar
1,090
Reaksiyon puanı
9
Puanları
218
[MENTION=373554]Fex[/MENTION] verdiğin scripte baya tırnak hatası mevcut fazla kurcalamadım o yüzden konunun bekası adına ;) bende bir script attım.

Google Pagerank Classı;
PHP:
<?php
class PR {
     public function get_google_pagerank($url) {
     $query="http://toolbarqueries.google.com/tbr?client=navclient-auto&ch=".$this->CheckHash($this->HashURL($url)). "&features=Rank&q=info:".$url."&num=100&filter=0";
     $data=file_get_contents($query);
     $pos = strpos($data, "Rank_");
     if($pos === false){} else{
     $pagerank = substr($data, $pos + 9);
     return $pagerank;
     }
     }
     public 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));
     $Check = ($Check < -2147483648) ? ($Check + $Int32Unit) : $Check;
     }
     $Check += ord($Str{$i});
     }
     return $Check;
     }
     public function HashURL($String)
     {
     $Check1 = $this->StrToNum($String, 0x1505, 0x21);
     $Check2 = $this->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);
     }
     public 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;
     }
}
?>

Kullanımı;
PHP:
<?php
require("PRclass.php"); // Class başka dosyada tutulacaksa.
$url='http://www.google.com/'; // Gösterilecek sitenin adresi.
$pr = new PR();
echo $url.' sitesinin Pagerank değeri: '.$pr->get_google_pagerank($url);?>
 
Üst