All pastes #445135 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-04-17 18:41 UTC
rendered paste body
#!/usr/bin/perl

use strict;
use warnings;
use WWW::Google::PageRank;

my($in, $out) = @ARGV;
my $url;

usage() unless $in and $out;

open(IN, '<', $in) or die "open(): error: Can't open ", $in, " for reading.\n";

open(OUT, '>', $out) or die "open(): error: Can't create ", $out, ".\n";

my $google = WWW::Google::PageRank -> new;

while(defined(my $domain = <IN>))
{
        chomp $domain;
        if($domain !~ /^http:\/\/(.*)$/)
        {
                $url = "http://" . $domain;
        }
        else
        {
                $url = $domain;
        }
        my $rank = $google -> get($url);
        if($url)
        {
                print $url, " has page rank ", $rank, "\n";
                print OUT $url, ":", $rank, "\n";
        }
}
close OUT;
close IN;
exit;

sub usage
{
        die <<EOH
Usage: $0 <infile> <outfile>
Infile should contain a list of domains, one per line.
Outfile is where the results will be wrtten to (in addition to STDOUT).
EOH

}