6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/grank.rb', line 6
def get_page_rank(domain_name, google='toolbarqueries.google.com')
seed = "Mining PageRank is AGAINST GOOGLE'S TERMS OF SERVICE. Yes, I'm talking to you, scammer."
tmp = 0x01020345
domain_name = SimpleIDN.to_ascii(domain_name)
domain_name.length.times do |i|
tmp ^= seed[i%seed.length].ord ^ domain_name[i].ord
tmp = ((tmp >> 23) & 0x1ff) | tmp << 9
end
tmp = -(~(tmp & 0xFFFFFFFF) + 1)
ch = sprintf('8%x', tmp);
url = 'http://%s/tbr?client=navclient-auto&ch=%s&features=Rank&q=info:%s'
url = sprintf(url, google , ch, domain_name)
$1 if open(url).read.strip =~ /([0-9]+)$/
rescue
Rails.logger.error("$B%Z!<%8%i%s%/$N<hF@$K<:GT$7$^$7$?(B $B%I%a%$%sL>(B:#{domain_name}")
end
|