Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
没有第三方API,我们如何通过PHP获得Google Pagerank_Php_Pagerank - Fatal编程技术网

没有第三方API,我们如何通过PHP获得Google Pagerank

没有第三方API,我们如何通过PHP获得Google Pagerank,php,pagerank,Php,Pagerank,请提供在线谷歌Pagerank显示的合适代码,我们无法放置第三方API来获取此信息。我们只能使用谷歌的API。如果有人有Pagerank的代码,那对我们很好。试试这个或试试这个或我更喜欢这个链接。这是一个API,但是开源,我不知道为什么它必须是自写的?我更喜欢这个链接。这是一个API,但它是开源的,我不知道为什么它必须是自写的?/*****************************************/ /****************************************

请提供在线谷歌Pagerank显示的合适代码,我们无法放置第三方API来获取此信息。我们只能使用谷歌的API。如果有人有Pagerank的代码,那对我们很好。

试试这个或

试试这个或

我更喜欢这个链接。这是一个API,但是开源,我不知道为什么它必须是自写的?

我更喜欢这个链接。这是一个API,但它是开源的,我不知道为什么它必须是自写的?

/*****************************************/
/*****************************************/
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
";
      $out .= "Host: www.google.com
";
      $out .= "Connection: Close

";
      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;
}
/*******************************************/
定义('GOOGLE_MAGIC',0xE6359A60); 函数_zeroFill($a,$b){ $z=hexdec(80000000); 如果($z&$a){ $a=($a>>1); $a&=(~$z); $a |=0x40000000; $a=($a>>($b-1)); }否则 $a=($a>>$b); 返回$a; } 功能组合($a、$b、$c){ $a-=$b;$a-=$c;$a^=($c,13)); $b-=$c;$b-=$a;$b^=($a
/*****************************************/
定义('GOOGLE_MAGIC',0xE6359A60);
函数_zeroFill($a,$b){
$z=hexdec(80000000);
如果($z&$a){
$a=($a>>1);
$a&=(~$z);
$a |=0x40000000;
$a=($a>>($b-1));
}否则
$a=($a>>$b);
返回$a;
}
功能组合($a、$b、$c){
$a-=$b;$a-=$c;$a^=($c,13));

$b-=$c;$b-=$a;$b^=($aI刚刚尝试了这个,但截至2012年3月7日它不再工作。我刚刚尝试了这个,截至2012年3月7日它不再工作