Free Check Bulk Google Pagerank Script

Discussion in 'PHP' started by c-bolank, Feb 2, 2013.

?

are U like This SCRIPT?

Poll closed Mar 2, 2013.
  1. Yes

    33.3%
  2. No

    33.3%
  3. Nothing

    33.3%
Multiple votes are allowed.
  1. #1
    I have a php script for google pagerank check, if you are interested please use it wisely. thanks.
    1. bulk.php

    <?php
    if (isset($_REQUEST['domain'])) {
        include ('pagerank.class.php');
        $check = new GooglePageRankChecker;
        $domainlist = explode("\n", trim($_REQUEST['domain']));
        $result = "<div align=\"center\">\n";
        foreach ($domainlist as $domain) {
            $domain = trim($domain);
            if ($domain != "") {
                $pr = $check->getRank($domain);
                $result .= "<span>" . $domain .  " | PR ";
                $result .= $pr;
                $result .= "</span><br />\n";
            }
        }
        $title = 'Page Rank Checker Result';
        $result .= "</div>\n";
    } else {
        $title = 'Page Rank Checker';
    }
    ?>
    <?php
    if (isset($result))
        echo $result;
    ?>
    <div align="center">
    <form action="" method="post">
    <textarea name="domain" style="width: 450px;height:100px;"></textarea><br>
    <input type="submit" name="submit" value="Check Bulk PR"/></form>
    PHP:
    2. pagerank.class.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 result1
        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 result1 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($string, 0x1505, 0x21);
          $check2 = $this->stringToNumber($string, 0, 0x1003F);
     
        $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(1 === ($flag % 2)) {
            $r += $r;
            $r = (int)($r / 10) + ($r % 10);
          }
          $check += $r;
          $flag ++;
        }
     
        $check %= 10;
        if(0 !== $check) {
          $check = 10 - $check;
          if(1 === ($flag % 2) ) {
            if(1 === ($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, $errstr, 30);
     
        // 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...
          $result1 = "N/A";
          while(!feof($socket)) {
            $data = fgets($socket, 128);
            $pos = strpos($data, "Rank_");
            if($pos !== false){
              $pagerank = substr($data, $pos + 9);
              $result1 += $pagerank;
            }
          }
          // Close the connection
          fclose($socket);
     
          // Return the rank!
          return $result1;
        }
      }
    }
     
    ?> 
    PHP:
    :D
     
    c-bolank, Feb 2, 2013 IP
  2. indyonline

    indyonline Prominent Member

    Messages:
    4,626
    Likes Received:
    248
    Best Answers:
    2
    Trophy Points:
    335
    #2
    It's "Do you like" not "Are you like".
    I will try this out though.
     
    indyonline, Feb 2, 2013 IP
  3. newbiee

    newbiee Peon

    Messages:
    1
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    1
    #3
    thanks for share
     
    newbiee, Feb 2, 2013 IP
  4. onlinemoneytips

    onlinemoneytips Peon

    Messages:
    8
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    1
    #4
    Nice Working Good I Try :)
     
    onlinemoneytips, Feb 6, 2013 IP
  5. ggiindia

    ggiindia Greenhorn

    Messages:
    55
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    16
    #5
    Great work you have done...I'll try this one soon.....
     
    ggiindia, Feb 6, 2013 IP
  6. masspingtool

    masspingtool Greenhorn

    Messages:
    1
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    11
    #6
    thanks for this script :)
     
    masspingtool, Feb 24, 2013 IP
  7. marcu

    marcu Greenhorn

    Messages:
    8
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    11
    #7
    Nice. Script but:
    $int32 = 4294967296
    What means that?
     
    marcu, Feb 27, 2013 IP