I have low level characters on a bunch of realms, and don't want to make any more, so I prefer to check how many updates (in the last 30 days) exist for my realms, and use that to decide which ones need a census.
I built a simple perl script that will query the realm data pages at WR, and show me the number of updates over the last 30 days for each of my realms:
Code: Select all
#!/usr/bin/perl
@serverlist = qw(741 783 80 42 85 654 32 77 21 26 46 67 43 535 57 49 559);
foreach $id (@serverlist) {
$document = `lynx -nolist -pseudo_inlines -dump "http://www.warcraftrealms.com/census.php?serverid=$id"`;
@doc = split("\n", $document);
$server = IndexOf("Server: ", \@doc);
$ratio = IndexOf("Ratio: ", \@doc);
printf ("%4sA,%4sH %s\n", $doc[$ratio+2] =~ /\s+(\d+) : (\d+)\*/, $doc[$server] =~ /(.*) GO/);
}
sub IndexOf { # pass in value, array reference
my ( $value, $arrayref ) = ( shift, shift );
foreach my $i ( 0 .. @$arrayref-1 ) {
return $i if ($$arrayref[$i] =~ /$value/);
}
}
Code: Select all
14A, 7H Server: [Antonidas................]
92A, 5H Server: [Arathor..................]
31A, 61H Server: [Burning Blade............]
2A, 133H Server: [Crushridge...............]
17A, 6H Server: [Durotan..................]
23A, 5H Server: [Executus.................]
47A, 68H Server: [Feathermoon..............]
20A, 45H Server: [Hellscream...............]
6A, 24H Server: [Illidan..................]
40A, 111H Server: [Mal'Ganis................]
258A, 355H Server: [Medivh...................]
59A, 36H Server: [Shattered Hand...........]
160A, 312H Server: [Silvermoon...............]
16A, 17H Server: [Smolderthorn.............]
89A, 45H Server: [Stormrage................]
42A, 62H Server: [Stormscale...............]
166A, 65H Server: [Twisting Nether..........]
Since the warcraftrealms.com site knows the realms that I have characters for, it would be nice if it could print such a customized list for me.
Rollie, I know you're unlikely to implement this because of all the other things on your wishlist, and that's fine. I'm hoping someone else finds my script useful, though. It should run fine from any command line in unix. Windows users might be able to run it using cygwin.