@ZEAL Blog·厉
We stand alone,
TOGETHER.

在页面上实现Google PR值的显示

Posted by zeal on 2005-06-03 14:23 , 9589 characters |  + 0 - 1   English
转载请保留本行原始出处声明信息 : http://www.zeali.net/entry/78 MaDe1nZEAL
标签 ( PHP ):  ,  , 
Google本身提供了查询指定的url的PageRank值的接口,知道了这个接口,就可以很容易编写脚本在页面上实现这一功能,而无需再依赖google toolbar才能进行查询。本文提供了一个用PHP实现的pr查询接口。同时修正了大部分版本中存在的 Linux 操作系统及64位操作系统下无法正常生成checksum的问题。

使用很简单,只要在需要的地方

<?php
include_once("./pr.inc.php");
echo getPR($urlToQuery);
?>

即可显示出指定url的PageRank的数值。知道了这个数值再在其基础上模拟出Google Toolbar上面的图形化的pr显示也就不是难事了。实际上实现原理说白了也很简单,就是传递特定的查询参数到Google的搜索引擎,然后抓取返回的页面内容。

演示页面请参见 : Google PageRank Query

本文代码素材来源: http://forums.seochat.com/archive/t-17286/Php-Pagerank-checker ;NewGCH方法实现参考于Firefox的工具栏扩展插件SearchStatus的相关代码实现。

网上还有一个开源的pr状态查询的项目: http://pagerankstatus.mozdev.org/source.html , 可以从cvs上直接抓取完整的源代码(cvs用户密码 guest):

cvs -d :pserver:guest@mozdev.org:/cvs login
cvs -d :pserver:guest@mozdev.org:/cvs co pagerankstatus

一个专门提供pr显示接口的网站: http://www.prchecker.info/

------------------------------------------------------------------

pr.inc.php源文件如下(Updated 2008-05-04 14:29 -- Google修改了checksum的计算算法,需要在原有的GCH方法之后再套一层NewGCH方法来得到正确的checksum,同时引发的php int overflow及64位机器兼容性问题请参照以下源代码的变化部分):

Last Modified on 2008-05-05 12:07
5 条评论:
- sean () (link) 于 2008-05-09 09:28
很好用的代码!谢谢了
- Joe2008-05-26 15:30
我试过好些网址,大概只有3分之一的网址能得到PR值,成功率很低,而且和其他的相关查询工具相比,速度很慢,同样是网页程序
http://www.knowsky.com/tools/pr/
查询就很快,而且很准确。

希望你能继续优化改进,
感谢你这种开源精神。
- KiKi2009-06-25 14:47
能不能给改成ASP或者VB或者其他版本的呢?
- zeal (link) verified2009-06-25 20:20
其实知道了原理,用什么语言实现就都不是问题了。
- lei2010-12-09 10:15
站长好厉害。。。很深入。。。
Since 2005.04.27  梦想 就像鸡蛋 要么孵化 要么臭掉RSS Feed (Entries) | Back To Home | @ZEAL | 沪ICP备05024379号