Yes I have the web API - but I cant seem to find anything on how to pull the web site PR. Anyone know how to do this?
Heres the source code for a free php pagerank checker <?php // PHP Google PageRank Calculator Script // ------------------------- August 2004 // Contact author: pagerankscript@googlecommunity.com // for updates, visit: // http://www.googlecommunity.com/scripts/google-pagerank.php // provided by www.GoogleCommunity.com // an unofficial community of Google fans // --------------------------------------- // Instructions // Upload pagerank.php to your server // Call it like this: http://www.example.com/pagerank.php?url=http://www.yahoo.com/ // example.com is your website. yahoo.com is the website to get the PR of // The code below displays the PR for $url /* 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); 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); /*-------------------------------------------- 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; } function getrank($url) { $url = 'info:'.$url; $ch = GoogleCH(strord($url)); $file = "http://www.google.com/search?client=navclient-auto&ch=6$ch&features=Rank&q=$url"; $data = file($file); $rankarray = explode (':', $data[2]); $rank = $rankarray[2]; return $rank; } echo 'PageRank: '.getrank($url).'<br /><small>provided by <a href="http://www.googlecommunity.com/" target="_blank">Google Community.com</a></small>'; ?> PHP:
Well I assumed expired. In php there seems to be a casting issue. We can do the correct checksum with that algo, hash and seed in java and C. Should have the php by tonight, but I really don't care if I have to use the C binary. So with the search API being a breeze and this being doable as well, the google tools is just a matter of html now for display and use. I've now started a recip link checking tool. I was inspired today when php classes dropped a php Class in my inbox today with all the work done. I suck at regexes.
I do not believe there is any way with the google api to get pagerank. You can find php code to compute google toolbar pagerank and php code to compute something that appears to be internal rank at http://www.searchengineengine.com/ . That site is a working demo of the code that is linked at the bottom of the page.
My php link directory script checks pagerank for all submitted links, but I don't have the code right off hand. I could get it for you though. Let me know if you still need it.
The script works fine, but there is problem with dynamic URLs, such as http://www.domain.com?page=10&linkid=4&linkname=Test In URL like this gets cut off at the first "&" sign, since it's considered to be another variable in the URL. So the above link gets translated to this in the Google query: http://www.google.com/search?client...=Rank&q=info:http://www.domain.com/links.asp? Any solutions to this?