Автоматическое получение показателя PR сайта

Discussion in 'SЕО - тонкости, методы раскрутки' started by \/IRUS, 24 Jan 2013.

  1. \/IRUS

    \/IRUS Elder - Старейшина

    Joined:
    3 Aug 2012
    Messages:
    379
    Likes Received:
    498
    Reputations:
    37
    Собственно хочу замутить чекер своих шеллов.
    тИЦ нашел как определять, а PR хз как =/
    разжуйте пожалуйста кто нибудь..
     
  2. justonline

    justonline network ninja

    Joined:
    27 Jul 2011
    Messages:
    499
    Likes Received:
    60
    Reputations:
    53
    http://toolbarqueries.google.com/tbr?sourceid=navclient-ff&features=Rank&client=navclient-auto-ff&ch=880d6eb7f&q=info:site.ru
     
  3. \/IRUS

    \/IRUS Elder - Старейшина

    Joined:
    3 Aug 2012
    Messages:
    379
    Likes Received:
    498
    Reputations:
    37
    спасибо друг
    разобрался )
     
  4. .Pumba.

    .Pumba. New Member

    Joined:
    22 Jan 2013
    Messages:
    19
    Likes Received:
    0
    Reputations:
    0
    А Тиц где определять кто скажет?
     
  5. mistika

    mistika New Member

    Joined:
    23 Jun 2012
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    http://yaca.yandex.ru/yca/cy/ch/forum.antichat.ru/
     
  6. Tyrust

    Tyrust New Member

    Joined:
    1 Nov 2011
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Без обид, но зачем изобретать велосипед?
     
  7. .Pumba.

    .Pumba. New Member

    Joined:
    22 Jan 2013
    Messages:
    19
    Likes Received:
    0
    Reputations:
    0
    Спс)
     
  8. qaz

    qaz Elder - Старейшина

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    173
    Reputations:
    75
    Чёт не выходит,
    нус к примеру

    http://toolbarqueries.google.com/tbr?sourceid=navclient-ff&features=Rank&client=navclient-auto-ff&ch=880d6eb7f&q=info:antichat.ru

    показывает ошибку

    мб я не так чёт делаю?
     
  9. justonline

    justonline network ninja

    Joined:
    27 Jul 2011
    Messages:
    499
    Likes Received:
    60
    Reputations:
    53
    http://toolbarqueries.google.com/tbr?sourceid=navclient-ff&features=Rank&client=navclient-auto-ff&ch=880d6eb7f&q=info:site.ru
    ch - это хеш. он просчитывается для каждого домена отдельно. я удалил закладку с пхп скриптом, где был алгоритм, но погугли по этойт теме, по-импровизируй с запросами, должна лежать не далеко от первых страниц гугла :)

    нашел за минуту гугления -

    PHP:
    <?php
    class GooglePageRankChecker {

      
    // Track the instance
      
    private static $instance;

      
    // Constructor
      
    function getRank($page) {
        
    // Create the instance, if one isn't created yet
        
    if(!isset(self::$instance)) {
          
    self::$instance = new self();
        }
        
    // Return the result
        
    return self::$instance->check($page);
      }

      
    // Convert string to a number
      
    function stringToNumber($string,$check,$magic) {
        
    $int32 4294967296;  // 2^32
          
    $length strlen($string);
          for (
    $i 0$i $length$i++) {
              
    $check *= $magic;
              
    //If the float is beyond the boundaries of integer (usually +/- 2.15e+9 = 2^31),
              //  the result of converting to integer is undefined
              //  refer to http://www.php.net/manual/en/language.types.integer.php
              
    if($check >= $int32) {
                  
    $check = ($check $int32 * (int) ($check $int32));
                  
    //if the check less than -2^31
                  
    $check = ($check < -($int32 2)) ? ($check $int32) : $check;
              }
              
    $check += ord($string{$i});
          }
          return 
    $check;
      }

      
    // Create a url hash
      
    function createHash($string) {
        
    $check1 $this->stringToNumber($string0x15050x21);
          
    $check2 $this->stringToNumber($string00x1003F);

        
    $factor 4;
        
    $halfFactor $factor/2;

          
    $check1 >>= $halfFactor;
          
    $check1 = (($check1 >> $factor) & 0x3FFFFC0 ) | ($check1 0x3F);
          
    $check1 = (($check1 >> $factor) & 0x3FFC00 ) | ($check1 0x3FF);
          
    $check1 = (($check1 >> $factor) & 0x3C000 ) | ($check1 0x3FFF);  

          
    $calc1 = (((($check1 0x3C0) << $factor) | ($check1 0x3C)) << $halfFactor ) | ($check2 0xF0F );
          
    $calc2 = (((($check1 0xFFFFC000) << $factor) | ($check1 0x3C00)) << 0xA) | ($check2 0xF0F0000 );

          return (
    $calc1 $calc2);
      }

      
    // Create checksum for hash
      
    function checkHash($hashNumber)
      {
          
    $check 0;
        
    $flag 0;

        
    $hashString sprintf('%u'$hashNumber) ;
        
    $length strlen($hashString);

        for (
    $i $length 1;  $i >= 0;  $i --) {
          
    $r $hashString{$i};
          if(
    === ($flag 2)) {
            
    $r += $r;
            
    $r = (int)($r 10) + ($r 10);
          }
          
    $check += $r;
          
    $flag ++;
        }

        
    $check %= 10;
        if(
    !== $check) {
          
    $check 10 $check;
          if(
    === ($flag 2) ) {
            if(
    === ($check 2)) {
              
    $check += 9;
            }
            
    $check >>= 1;
          }
        }

        return 
    '7'.$check.$hashString;
      }

      function 
    check($page) {

        
    // Open a socket to the toolbarqueries address, used by Google Toolbar
        
    $socket fsockopen("toolbarqueries.google.com"80$errno$errstr30);

        
    // If a connection can be established
        
    if($socket) {
          
    // Prep socket headers
          
    $out "GET /tbr?client=navclient-auto&ch=".$this->checkHash($this->createHash($page)).
                  
    "&features=Rank&q=info:".$page."&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";

          
    // Write settings to the socket
          
    fwrite($socket$out);

          
    // When a response is received...
          
    $result "";
          while(!
    feof($socket)) {
            
    $data fgets($socket128);
            
    $pos strpos($data"Rank_");
            if(
    $pos !== false){
              
    $pagerank substr($data$pos 9);
              
    $result += $pagerank;
            }
          }
          
    // Close the connection
          
    fclose($socket);

          
    // Return the rank!
          
    return $result;
        }
      }
    }

    $rank GooglePageRankChecker::getRank("searchengines.ru");
    echo 
    $rank;

    ?>
    не чекал..в универ бежать надо
     
    #9 justonline, 14 Feb 2013
    Last edited: 14 Feb 2013
    1 person likes this.