Category: | Utility / Web |
Author/Contact Info | Orthanc |
Description: | An Anon Monk sent in something similar to SOPW so I modified the code a bit and here it is. Could do with a bit more error checking but it works. |
#!/usr/bin/perl
use LWP::Simple;
$| = 1;
$url = "http://setiathome.ssl.berkeley.edu/cgi-bin/cg
+i?cmd=user_stats&email=";
$email = "INSERT DEFAULT EMAIL HERE";
$res_okay = 1;
$email = $ARGV[0] if(defined $ARGV[0]);
$email =~ s/@/%40/g;
@html=get("$url$email");
foreach (@html) {
$_=~s/\cM//g;
$_=~s/<(br|p)>/\n\n/ig;
$_=~s/<(?:[^>'"]*|(['"]).*?\1)*>//gs
}
foreach (@html) {
chomp($_);
m/(.*@.*)/;
$user = "$1";
m/returned: (.*)/;
$received = "$1";
m/this rank: (\d*)/;
$peers = "$1";
m/rank out of (\d*).*is: (\d*)/;
$rank = "$2/$1";
m/ (\d*)\n(\d* hr \d* min)\n(\d* hr \d* min \d*?\.\d*)/;
$results = "$1";
$cputime = "$2";
$avgworktime = "$3";
m/(\d*?\.\d*%)/;
$morework = $1;
$res_okay = 0 if(/No user with that name was found/);
}
if($res_okay) {
print "Seti stats ($user)\n";
print " Results: $results\n";
print " Tot CPU Time: $cputime\n";
print "Avg Work Time: $avgworktime\n";
print " Last Result: $received\n";
print " Rank: $rank (Peers $peers)\n";
print " \% Position: $morework\n";
} else {
print "No details for : $email\n";
}
|
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Seti stats
by Hielo (Sexton) on Apr 17, 2003 at 20:31 UTC | |
by Mr. Muskrat (Canon) on Apr 17, 2003 at 21:22 UTC | |
by Hielo (Sexton) on Apr 17, 2003 at 23:12 UTC |
Back to
Code Catacombs