獲取google pagerank值的研究
-
騰虎網(wǎng)絡(luò):2010-03-24 閱讀數(shù): 分享到:
今天在網(wǎng)上看到有網(wǎng)站提供顯示google pagerank值的功能,聽說(shuō)google已經(jīng)取消了公開的pagerank顯示,只有通過(guò)ie google toolbar獲得,所以覺(jué)得挺有意思,就去研究了一下。 我裝上google toolbar抓了一下socket包,得到了如下信息:GET /search?client=navclient-auto&googleip=O;3812&ch=62544423920&freshness_check=4X0lThsX1_WR7cBSIbnl8&ie=UTF-8&oe=UTF-8&features=Rank&q=info:http%3A%2F%2Fblog%2Eiyi%2Ecn%2Fdavid%2F HTTP/1.1User-Agent: Mozilla/4.0 (compatible; GoogleToolbar 2.0.114.9-big; Windows 5.2)Host: toolbarqueries.google.comCache-Control: no-cacheCookie: PREF=ID=3e46a681346bcce2:NW=1:TM=1099618786:LM=1104831026:TB=2:S=8oMV8rWWHE07ngDp測(cè)試了一下,發(fā)現(xiàn)只有GET后面的信息和host比較重要,其他的信息可以任意填寫而這其中比較重要的信息是下面這幾條: client=navclient-auto& ch=0123456789& features=Rank& q=info:http%3A%2F%2Fblog%2Eiyi%2Ecn%2Fdavid%2F client=navclient-auto表示客戶端是google toolbar,如果沒(méi)有這個(gè)參數(shù)得到的結(jié)果是在google中搜索這個(gè)網(wǎng)址的結(jié)果ch=0123456789是checksum值,關(guān)鍵中的關(guān)鍵,google對(duì)每個(gè)網(wǎng)址用特殊算法進(jìn)行轉(zhuǎn)換后得到這個(gè)checksum,google就是靠這個(gè)來(lái)對(duì)它的pagerank進(jìn)行加密的。如果知道了這個(gè)算法,獲取pagerank就輕而易舉了。features=Rank獲取的是pagerank值,我得到的結(jié)果是Rank_1:1:1其中更后一位是pagerank的值,如果忽略這個(gè)參數(shù)得到的是相關(guān)網(wǎng)頁(yè)在google中的詳細(xì)信息的xml,我得到的是下面的信息: <?xml version=1.0 encoding=GB2312 standalone=no ?> <!DOCTYPE GSP (View Source for full doctype...)> - <GSP VER=3.2> <TM>0.124300</TM> <Q>info:http://blog.iyi.cn/david/</Q> <PARAM name=client value=navclient-auto original_value=navclient-auto /> <PARAM name=googleip value=O;907 original_value=O;907 /> <PARAM name=ch value=62544423920 original_value=62544423920 /> <PARAM name=q value=info:http://blog.iyi.cn/david/ original_value=info:http%3A%2F%2Fblog.iyi.cn%2Fdavid%2F /> - <RES SN=1 EN=1> <M>1</M> <XT /> - <R N=1 L=1 MIME=text/html> <U>http://blog.iyi.cn/david/</U> <UE>http://blog.iyi.cn/david/</UE> <T>泰然處之- 大衛(wèi)'s BLOG</T> <RK>1</RK> <S>泰然處之 - 大衛(wèi)'s BLOG. 2004年12月. , 一, 二, 三, 四, 五, 六. 1, 2, 3, 4. <b>...</b></S> <LANG>zh-CN</LANG> - <HAS> <L TAG=link: /> <C SZ=90k CID=28N4KopQVykJ TAG=cache: /> <RT TAG=related: /> </HAS> </R> </RES> </GSP>內(nèi)容很容易看得明白,這里就不解釋了。(難道我得blog被google懲罰了?好久沒(méi)有更新了-_-)知道了原理,就來(lái)考慮如何解決了。其實(shí)google toolbar可以很容易的動(dòng)態(tài)跟蹤,懂得匯編的人可以很快的找出它的checksum算法,這當(dāng)然是更好的解決之道。另外,如果你不懂得匯編,可以通過(guò)歷史紀(jì)錄獲得向管鏈接的checksum值,可以從你的ie臨時(shí)文件夾中找到;蛘吣阋部梢越⒋矸⻊(wù)器,讓google toolbar通過(guò)代理服務(wù)器來(lái)獲取pagerank值,然后在代理服務(wù)器上運(yùn)行相關(guān)程序來(lái)截取checksum值。另外,還找到這個(gè)pr值對(duì)照表:Toolbar PageRank Real PageRank0/10 0.15 - 0.91/10 0.9 - 5.42/10 5.4 - 32.43/10 32.4 - 194.44/10 194.4 - 1,166.45/10 1,166.4 - 6,998.46/10 6,998.4 - 41,990.47/10 41,990.4 - 251,942.48/10 251,942.4 - 1,511,654.49/10 1,511,654.4 - 9,069,926.410/10 9,069,926.4 - 0.85 × N + 0.15我覺(jué)得所謂的real pagerank可以估算為:Nd+(1-d)N是在google搜索到的鏈接到當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)數(shù),d是google定義的阻尼值。比如在google中輸入link:www.sohu.com得到的結(jié)果是:133,000 項(xiàng),用上面的公式計(jì)算得到113050.15,剛好對(duì)應(yīng)到pr值7,也可以根據(jù)各個(gè)數(shù)據(jù)段的百分比算出10以內(nèi)的pr值小數(shù)位其實(shí)這樣子很容易的到pr值,根本不用那個(gè)checksum加密算法