最新用php获取谷歌PR值算法,附上php查询PR值代码示例

复制代码 代码如下:

  /*

  *功能:对URL进行编码

  *参数说明:$web_url 网站URL,不包含"http://",例如glzy8.com

  */

  function HashURL($url){

  $SEED = "Mining PageRank is AGAINST GOOGLE'S TERMS OF SERVICE. Yes, I'm talking to you, scammer.";

  $Result = 0x01020345;

  for ($i=0; $i<strlen($url); $i++)

  {

  $Result ^= ord($SEED{$i%87}) ^ ord($url{$i});

  $Result = (($Result >> 23) & 0x1FF) | $Result << 9;

  }

  return sprintf("8%x", $Result);

  }

  /*

  *功能:获取pagerank

  *参数说明:$domain 网站域名,不包含"http://",

  */

  function pagerank($domain)

  {

  $StartURL = "http://toolbarqueries.google.com/tbr?client=navclient-auto&features=Rank:&q=info:";

  // $StartURL = "http://www.google.com/search?client=navclient-auto&features=Rank:&q=info:";

  $GoogleURL = $StartURL.$domain. '&ch='.HashURL($domain);

  $fcontents = file_get_contents("$GoogleURL");

  $pagerank = substr($fcontents,9);

  if (!$pagerank) return "0";else return $pagerank;

  }

  本人写的PR查询工具就是这样的,但是有一点要说明,PR有时候查询有点慢,有的人说为什么别人的站查询很快,其实,很多的PR查询站都做了各种缓存的,因为PR一般情况下,不会改变,除非谷歌PR更新,呵呵。