Code lấy Google PageRank bằng PHP

Code lấy Google PageRank bằng PHP

Đã có nhiều công cụ kiểm tra Google PageRank rồi, code này chủ yếu để các bạn vọc hoặc là muốn tự tạo một công cụ kiểm tra PageRank trên chính trang web của bạn. Tuy không chắc rằng Google có khai tử PageRank trong năm 2014 này hay không, nhưng tinh thần học hỏi thì không bao giờ ngừng, bạn cứ thử làm code này trước khi mọi thứ quá muộn nhé.

Đầu tiên thì bạn tạo một class để đảm nhiệm nhiệm vụ lấy thông tin từ server của Google trước.

[php]
<?php
class PR {
public function get_google_pagerank($url) {
$query="http://toolbarqueries.google.com/tbr?client=navclient-auto&ch=".$this->CheckHash($this->HashURL($url)). "&features=Rank&q=info:".$url."&num=100&filter=0";
$data=file_get_contents($query);
$pos = strpos($data, "Rank_");
if($pos === false){} else{
$pagerank = substr($data, $pos + 9);
return $pagerank;
}
}

public function StrToNum($Str, $Check, $Magic)
{
$Int32Unit = 4294967296; // 2^32

$length = strlen($Str);
for ($i = 0; $i < $length; $i++) {
$Check *= $Magic;

if ($Check >= $Int32Unit) {
$Check = ($Check – $Int32Unit * (int) ($Check / $Int32Unit));
$Check = ($Check < -2147483648) ? ($Check + $Int32Unit) : $Check;
}
$Check += ord($Str{$i});
}
return $Check;
}

public function HashURL($String)
{
$Check1 = $this->StrToNum($String, 0x1505, 0x21);
$Check2 = $this->StrToNum($String, 0, 0x1003F);

$Check1 >>= 2;
$Check1 = (($Check1 >> 4) & 0x3FFFFC0 ) | ($Check1 & 0x3F);
$Check1 = (($Check1 >> 4) & 0x3FFC00 ) | ($Check1 & 0x3FF);
$Check1 = (($Check1 >> 4) & 0x3C000 ) | ($Check1 & 0x3FFF);

$T1 = (((($Check1 & 0x3C0) << 4) | ($Check1 & 0x3C)) <<2 ) | ($Check2 & 0xF0F );
$T2 = (((($Check1 & 0xFFFFC000) << 4) | ($Check1 & 0x3C00)) << 0xA) | ($Check2 & 0xF0F0000 );

return ($T1 | $T2);
}

public function CheckHash($Hashnum)
{
$CheckByte = 0;
$Flag = 0;

$HashStr = sprintf(‘%u’, $Hashnum) ;
$length = strlen($HashStr);

for ($i = $length – 1; $i >= 0; $i –) {
$Re = $HashStr{$i};
if (1 === ($Flag % 2)) {
$Re += $Re;
$Re = (int)($Re / 10) + ($Re % 10);
}
$CheckByte += $Re;
$Flag ++;
}

$CheckByte %= 10;
if (0 !== $CheckByte) {
$CheckByte = 10 – $CheckByte;
if (1 === ($Flag % 2) ) {
if (1 === ($CheckByte % 2)) {
$CheckByte += 9;
}
$CheckByte >>= 1;
}
}

return ‘7’.$CheckByte.$HashStr;
}
}
?>
[/php]

Bạn lưu class trên với tên pr.class.php, sau đó tạo một tập tin PHP khác để sử dụng lại code này:

[php]
<?php
include_once("pr.class.php");
$url=’http://sauhi.com’;
$pr = new PR();
echo "$url PageRank: ". $pr->get_google_pagerank($url) ;
?>
[/php]

Bạn chạy thử tập tin vừa tạo xem có đúng là trang của bạn có Google PageRank là như thế không nhé. Bạn có thể kiểm tra lại và so sánh kết quả với những công cụ đang chạy trực tuyến hoặc thông qua Google Toolbar.

Tải về máy tính pr.class.php

Leave a Reply

9 Comments on "Code lấy Google PageRank bằng PHP"

Notify of
avatar
Sort by:   newest | oldest | most voted
Jam Việt
Guest

Trước có làm thành công xong không biết mình quăng đi đâu mất ! Hix !

ve may bay gia re
Guest

Cái này không tốt cho SEO rồi đó bạn. Chơi qua mắt Google có ngày cũng die thôi.

Người Vô Danh
Guest

Đọc comment của bạn mà mình buồn cười =))

Văn Luận
Guest

K hiểu ý của bác lắm

gái đẹp
Guest

Có cả loại này luôn hả a Sáu? quá bá, nhưng nghe ông ở trên comment nên không dám thử 🙁

ve may bay gia re
Guest

bạn đọc tiêu đề nội dung đi. Sao nói là kiểm tra.

Công ty dịch thuật miền trung
Guest

PR bị khai tử rồi giờ MOZ đang lên ngôi

Văn Luận
Guest

Moz là gì vậy bác

wpDiscuz