Aller au contenu

Utilisateur:Romainbehar/Programmation : GwynBot

Définition, traduction, prononciation, anagramme et synonyme sur le dictionnaire libre Wiktionnaire.

J’ai créé le robot GwynBot pour effectuer les tâches simples et répétitives qui n’ont pas besoin de vérification.

La bibliothèque MediaWiki::Bot permet d’écrire son Bot en quelques lignes.

#!/usr/bin/perl -w

use strict;
use utf8;
use open qw( :encoding(utf8) :std );

use MediaWiki::Bot qw(:constants);

my $bot = MediaWiki::Bot->new({
     assert      => 'bot',
     host        => 'fr.wiktionary.org',
     login_data  => { username => "GwynBot", password => "###" },
     agent       => sprintf('GwynBot/1.0 (https://fr.wiktionary.org/wiki/Utilisateur:GwynBot; User:GwynBot) MediaWiki::Bot/5.006003'),
     debug       => 2
}) or die "Could not log in\n";


# liste des articles à modifier
my @titres = ('titre1', 'titre2', 'titre3');

for my $titre (@titres) {
	# récupération du texte
	my $text = $bot->get_text($titre);

	# modification
	my $text2 = $text;
	# ...

	# mise à jour
	if ($text2 ne $text) {

		$bot->edit({
		    page    => $titre,
		    text    => $text2,
		    summary => "J'ai fait ça",
		    minor   => 1,
		    assert  => 'user',
		    markasbot => undef,
		});

		print "Fait : $titre\n";
		sleep 10;
	}
}


$bot->logout();