Un article de Wikipédia, l'encyclopédie libre.
#!/usr/bin/perl
use KelBot;
use strict;
use Getopt::Long;
my $pw;
my $page;
my $content;
my $summary;
my $mode="erase";
GetOptions('content=s' => \$content, 'page=s' => \$page, 'summary=s' => \$summary, 'mode=s' => \$mode);
if (!$content) {
print "usage: ./kbwrite --content=your_content --page=your_page --summary=your_summary --mode=[slice|insert|erase]\n";
exit
};
if ($page) {
kbwrite($page, $content, $summary, $mode);
} else {
unless ($page) {
while ($page = <STDIN>) {
$page =~ s/\n//;
kbwrite($page, $content, $summary, $mode);
}
}
}
sub kbwrite {
my $page = shift;
my $content = shift;
my $summary = shift;
my $mode = shift;
return unless ($page);
unless ($pw) {
$pw = KelBot->new('kbwrite');
$pw->login();
}
$page = `php -q ./urlencode.php "$page"`;
if ($mode eq "slice") {
$content = $content."\n".$pw->get_text($page);
}
elsif ($mode eq "insert") {
$content = $pw->get_text($page)."\n".$content;
}
$pw->edit($page, $content, $summary);
}