Perhaps I wrote this cause it put me in such good company, but.....
This script that will generate a list of monks who have more XP than everyone who signed up after them.
For instance George_Sherston makes the list because no one whose homenodeid is higher than 103111 has more than
1282 XP. In otherwords, he's managed to stay ahead of all the newer monks.
Although this is quite silly it does show the power of HTML::TableExtract.
#!/usr/bin/perl -wT
use strict;
use LWP::Simple;
use HTML::TableExtract;
my $maxmonks = 2000;
my $monksperpage = 50;
my $tinymicros = 'http://tinymicros.com/pm/index.php?goto=MonkStats&
+start=';
my $te = new HTML::TableExtract( headers =>
['Rank','Node ID','Name','Experie
+nce'],
);
my $offset = 0;
while ($offset < $maxmonks) {
my $html = get("$tinymicros$offset");
$te->parse($html);
$offset+=$monksperpage;
}
print "NodeID Name Experience\n";
my $maxid = 0;
for my $ts ($te->table_states) {
for my $row ($ts->rows) {
my ($rank,$nodeid,$name,$xp) = @$row;
if ($nodeid > $maxid) {
printf("%6d %-14s %7d\n",$nodeid,$name,$xp);
$maxid = $nodeid;
}
}
}
Here is the current list:
-Blake
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.