Utilisateur:KelBot/kbgrep
<syntaxhighlight lang="perl">
- !/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; } }
}
}