Introduction
Google’s Page Rank (PR) is a “link analysis algorithm measuring the relative importance” (PR @wikipedia). The importance of PR nowadays is a lot lower, than one or two years ago. Never the less, PR is the only Ranking value, that is public to all audience, which means it’s the only factor with some transparency. For those, who don’t know: a PR of 10 is the highest around (like apple.com) and 0 the lowest – those sites, who don’t even have a PR of 0 are in a kind of sandbox (a special filter to punish the site) or not indexed by Google.
Background
Google tries to measure the relevance of a domain/site by counting the links pointing to the site/domain. This is influenced by the number of links, that link to the linking site – in fact this kind of procedure is an iterative process, which needs a lot computing power.
Many webmasters believe, their ranking depends on the PR of their site – this, today, is not true. PR never was the only factor for Google’s ranking, but it was the most important factor. Right now, it’s not. And many people believe, that Google tries to get rid of the Rage Rank, because link traders are measuring the value (in $) of a link by PR – which is just stupid.
If you’re interested in buying links, go with following factors:
- Link popularity (how often is the site, you’re willing to buy a link from, linked?)
- Domain popularity (^ + by different domains)
- IP-Popularity (^ + on different IPs)
- has the Domain an “authority status”?
- Is the content of the domain relevant for your content?
- Has this domain a good ranking for keywords you wanna rank good at?
- How many outgoing links does this site have?
Because PR is the one and only factor, we can have a look at, it’s pretty nice to check it. And it’s even more nice, if we can do that on more than one Google Datacenter at the same time.
Requesting the PR
Well, the easy part it, how the PR get’s requested: it’s just a simple HTTP-Request, with a little problem in it: here’s the request for www.codeproject.com
//
http://toolbarqueries.google.com/search?client=navclient-auto&hl=en&ch=6771535612&ie=UTF-8&oe=UTF-8&features=Rank&q=info:http%3A%2F%2Fwww.codeproject.com%2F
//
Well, this seems to be easy, but there’s this little
which is a hash value, referencing the domain we want to get the PR for. This hashing algorithm was NOT developed by Google, it’s the perfect hashing algorithm by Bob Jenkins
After some folks ported the code to php, I tried to do a port to C# – and here we go.
C# Example Code
[code:c#]
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;
namespace GooglePR
{
