Un article de Wikipédia, l'encyclopédie libre.
#!/usr/bin/perl
use KelBot;
use strict;
use Getopt::Long;
my $pw;
my $page;
my $revert;
my @regexps;
GetOptions('revert' => \$revert, 'page=s' => \$page, 'regexp=s' => \@regexps);
if (!scalar(@regexps)) {
print "usage: ./kbgrep.pl --revert --regexp=your_regexp --page=your_page\n";
exit
};
if ($page) {
kbgrep($page);
} else {
unless ($page) {
while ($page = <STDIN>) {
$page =~ s/\n//;
kbgrep($page);
}
}
}
sub kbgrep {
my $page = shift;
return unless ($page);
unless ($pw) {
$pw = KelBot->new('kbgrep');
$pw->login();
}
my $old_page = $page;
$page = `php -q ./urlencode.php "$page"`;
my $content = $pw->get_text($page);
foreach my $regexp (@regexps) {
if ($revert) {
unless ($content =~ /$regexp/) {
print $old_page."\n";
last;
}
} else {
if ($content =~ /$regexp/) {
print $old_page."\n";
last;
}
}
}
}