Checksum的算法请在网上搜索，一定找得到。流行最广的，也是最早的是一段PHP代码。

<?php
/*
This code is released unto the public domain
*/

//unsigned shift right
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);
}

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)              /* all the case statements fall through */
{
case 11: \$c+=(\$url[\$k+10]<<24);
case 10: \$c+=(\$url[\$k+9]<<16);
case 9 : \$c+=(\$url[\$k+8]<<8);
/* the first byte of c is reserved for the length */
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]);
/* case 0: nothing left to add */
}
\$mix = mix(\$a,\$b,\$c);
/*-------------------------------------------- report the result */
return \$mix[2];
}

//converts a string into an array of integers containing the numeric value of the char
function strord(\$string) {
for(\$i=0;\$i<strlen(\$string);\$i++) {
\$result[\$i] = ord(\$string{\$i});
}
return \$result;
}
//
http://www.example.com/ - Checksum: 6540747202
\$url = 'info:'.\$_GET['url'];
print("
url:\t{\$_GET['url']}\n");
printf("ch:\t6%u\n",\$ch);
?>

2 Alexa排名数据

http://data.alexa.com/data/+wQ411en8000lA?cli=10&dat=snba&ver=7.0&cdt=alx_vw%3D20%26wid%3D12206%26act%3D00000000000%26ss%3D1680x16t%3D0%26ttl%3D35371%26vis%3D1%26rq%3D4&url=spaces.msn.com

GET以上地址即可。把spaces.msn.com换程序要的地址。调用后将返回一段xml如下：

<?xml version="1.0" encoding="UTF-8"?>

<ALEXA VER="0.9" URL="spaces.msn.com/" HOME="0" AID="=">
<RLS TITLE="Related Links" PREFIX="http://" more ="389">
<RL HREF="mobile.msn.co.jp/" TYPE="link" SRC="NTrails" TITLE="Msn" CONF="034" />
<RL HREF="yahoo.com/" TYPE="link" SRC="UserEdit" TITLE="Yahoo!" CONF="300" ASIN="B00006D2TC"/>
<RL HREF="
<RL HREF="netscape.com/" TYPE="link" SRC="UserEdit" TITLE="Netscape" CONF="300" ASIN="B00006C6KQ"/>
<RL HREF="excite.com/" TYPE="link" SRC="UserEdit" TITLE="My Excite" CONF="300" ASIN="B00006E21K"/>
<RL HREF="aol.com/" TYPE="link" SRC="UserEdit" TITLE="AOL Anywhere" CONF="300" ASIN="B00006ARD3"/>
<RL HREF="
</RLS>
<SD TITLE="Alexa Site Data" FLAGS="DMOZ">
<AMZN ASIN="B000304FNA" URL="spaces.msn.com/"/>
<ADDR STREET="One Microsoft Way" CITY="Redmond" STATE="WA" ZIP="98052" COUNTRY="US"/>
<CREATED DATE="10-Nov-1994" DAY="10" MONTH="11" YEAR="1994"/>
<PHONE NUMBER="unlisted"/>
<OWNER NAME="
www.msn.com"/>
info@msn.com"/>
<POP RATE="13"/>
<DOS>
<DO DOMAIN="microsoft.com" TITLE="microsoft.com"/>
<DO DOMAIN="passport.com" TITLE="passport.com"/>
<DO DOMAIN="msnbc.com" TITLE="msnbc.com"/>
<DO DOMAIN="windowsmedia.com" TITLE="windowsmedia.com"/>
<DO DOMAIN="iechannelguide.com" TITLE="iechannelguide.com"/>
<DO DOMAIN="cooltravelassistant.com" TITLE="cooltravelassistant.com"/>
<DO DOMAIN="mstrav.com" TITLE="mstrav.com"/>
<DO DOMAIN="msnusers.com" TITLE="msnusers.com"/>
<DO DOMAIN="msimg.com" TITLE="msimg.com"/>
<DO DOMAIN="eshop.com" TITLE="eshop.com"/>
<DO DOMAIN="windowsupdate.com" TITLE="windowsupdate.com"/>
<DO DOMAIN="passportimages.com" TITLE="passportimages.com"/>
<DO DOMAIN="home-publishing.com" TITLE="home-publishing.com"/>
<DO DOMAIN="slate.com" TITLE="slate.com"/>
<DO DOMAIN="windows.com" TITLE="windows.com"/>
<DO DOMAIN="windows95.com" TITLE="windows95.com"/>
<DO DOMAIN="expediamaps.com" TITLE="expediamaps.com"/>
<DO DOMAIN="encarta.com" TITLE="encarta.com"/>
<DO DOMAIN="carpoint.com" TITLE="carpoint.com"/>
<DO DOMAIN="hotmai.com" TITLE="hotmai.com"/>
<DO DOMAIN="msn.net" TITLE="msn.net"/>
<DO DOMAIN="moneycentral.com" TITLE="moneycentral.com"/>
<DO DOMAIN="msretech.com" TITLE="msretech.com"/>
<DO DOMAIN="microsoftfrontpage.com" TITLE="microsoftfrontpage.com"/>
<DO DOMAIN="vworlds.org" TITLE="vworlds.org"/>
<DO DOMAIN="investor.com" TITLE="investor.com"/>
<DO DOMAIN="homail.com" TITLE="homail.com"/>
<DO DOMAIN="crimsonskies.com" TITLE="crimsonskies.com"/>
</DOS>
<TICKER SYMBOL="MSFT"/>
<LANG LEX="en"/>
<SPEED TEXT="2537" PCT="30"/>
<REVIEWS AVG="4.0" NUM="21"/>
<POPULARITY URL="msn.com/" TEXT="2"/>
<CHILD SRATING="0"/>
<ASSOCS>