Where can I get a php script that returns PageRank?

7 replies
Hello All,

I have scoured the web for a php script that returns the PageRank of the webpage you feed it. However, none of the samples I have found work.

I read somewhere in my travels that Google had changed something and that rendered all of the old scripts inoperable.

Anyone know of one that works?

Thanks

John Mann
#pagerank #php #returns #script
  • {{ DiscussionBoard.errors[4942476].message }}
  • Profile picture of the author michaelcook2003
    <?php
    define('GOOGLE_MAGIC', 0xE6359A60);
    function _zeroFill($a, $b){
    $z = hexdec(80000000);
    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){
    case 11: $c += ($url[$k + 10] << 24);
    case 10: $c += ($url[$k + 9] << 16);
    case 9 : $c += ($url[$k + 8] << 8);
    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]);
    }
    $_mix = _mix($a,$b,$c);
    return $_mix[2];
    }
    function _strord($string){
    for($i = 0;$i < strlen($string);$i++)
    $result[$i] = ord($string{$i});
    return $result;
    }
    function getPageRank($url){
    $pagerank = -1;
    $ch = "6"._GoogleCH(_strord("info:" . $url));
    $fp = fsockopen("www.google.com", 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 .= "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);
    }
    fclose($fp);
    }
    return $pagerank;
    }
    ?>

    To use the script just include it in your files and call the getPageRank() function, passing the URL as the parameter.
    {{ DiscussionBoard.errors[5226061].message }}
  • Profile picture of the author RobKonrad
    Or, you could dig into a code of other plugins that do that, like this one:

    WordPress › Show-My-PageRank « WordPress Plugins

    and modify it for your needs.

    Cheers,
    Rob
    Signature
    ================================================== ===
    This blog is awesome: http://www.robkonrad.com/blog. Read it.
    ================================================== ===
    {{ DiscussionBoard.errors[5231243].message }}
  • Profile picture of the author omarusman
    I have it. I did make one last year for personal use. Let me know if you're interested. I can pass it to you.
    {{ DiscussionBoard.errors[5371113].message }}
  • Profile picture of the author seopanther
    You can easily find such a script on hotscripts you will get lots of free scripts there
    {{ DiscussionBoard.errors[5372013].message }}
  • Profile picture of the author semutdesign
    If you use WordPress the use the plugin, it best choice.
    {{ DiscussionBoard.errors[5375557].message }}
  • Profile picture of the author hassan001
    Here

    Seo Stats Script - PHP Website Ranking Checker Tools

    You will not only find pagerank with this script but also have many more advanced features like backlinks, indexed pages etc plus a great looking interface and admin panel.....

    Regards
    {{ DiscussionBoard.errors[5377451].message }}

Trending Topics