Manual:Pywikibot/Installation/fr

Installation initiale
En fonction de la branche que vous voulez installer et de de votre système d'exploitation, vous devez faire les choses suivantes :
 * 1) Télécharger Python (pour les utilisateurs de Windows) ou le mettre à jour si nécessaire (utilisateurs de Mac).
 * 2) Installer httplib2 (seulement pour "core", si vous utilisez "compat" ce n'est pas nécessaire).
 * 3) Télécharger Pywikibot.

Télécharger Python

 * Les systèmes Unix: en général, ils diposent d'une version suffisament récente de Python (2.5 pour la branche compat, 2.7 pour la branche core). vérifiez grâce à


 * Mac OSX 10.8: vient avec une version de Python suffisamment récente. Sur les versions antérieure ou en cas de doute, installez Python 2.7.6 sur.


 * Windows: téléchargez et installez le dernier lancement de Python 2.7 de http://www.python.org/downloads/


 * Version de Python : les versions suivantes de Python sont prises en charge :

Deux versions de pywikibot
Il existe deux branches en développement actif. Vous pouvez choisir parmi :
 * Core (auparavant rewrite), qui devrait être votre premier choix. Si vous ne savez pas quoi choisir, prenez cette branche.
 * Compat (auparavant trunk) est une ancienne version du logiciel. Si vous modifiez de vieux wikis (pre-1.16 ou avant), ou que vous avez besoin de scripts qui ne sont pas encore disponible dans core (voir la liste de compatibilité), c'est ce qu'il vous faut.

À cause d'un bug avec l'Unicode dans la logithèque Python sous-jacente, il est grandement recommandé d'utiliser la version Python 2.7.2 ou une suite plus avancé avec les projets Wikimedia qui utilisent le version Compat. Voir aussi les exigences pour un robot, qui décrivent les versions de Python et de Pywikibot exigées.

Télécharger Pywikibot
La manière la plus simple de télécharger Pywikibot est d'utiliser la dernière version compilée. Téléchargez juste le fichier ZIP de Pywikibot sur votre ordinateur et décompressez-le - aucune installation n'est requise.

Télécharger Pywikibot avec Git
Pour une installation avec Git vous devriez exécuter :
 * Pour "core" (anciennement "rewrite")
 * Pour "compat" (anciennement "trunk")

L'option  installe automatiquement les sous-modules nécessaires. Il y en a à l'heure actuelle deux : i18n pour la traduction des messages et spelling pour l'orthographe. Si vous n'utilisez pas cette option, vous devrez les installer à part après le clonage. Il y a deux commandes (i18n est vraiment nécessaire même pour les robots en anglais) :

Télécharger Pywikibot avec SVN
Si vous ne voulez pas utiliser Git vous pouvez aussi utiliser SVN :
 * Pour "core" (anciennement "rewrite")

Les utilisateurs de Windows peuvent utiliser l'extension TortoiseSVN, voir La section suivante.

Pour installer à partir de SVN vous devriez lancer


 * Pour core (anciennement rewrite)
 * Pour "compat" (anciennement "trunk")

Télécharger Pywikibot avec TortoiseSVN pour les utilisateurs de Windows
TortoiseSVN est une extension du shell graphique windows pour travailler avec SVN. Vous pouvez télécharger la version actuelle sur http://tortoisesvn.net/downloads.html. Si vous utilisez TortoiseSVN suivez ces instructions :


 * Pour la version "core" (anciennement "rewrite")
 * 1) Faites un clic droit sur votre dossier préféré et exécutez
 * 2) Choisissez  et collez l'URL
 * 3) Choisissez  et changez le dossier par défaut, par exemple , pour   si vous voulez.
 * 4) Confirmer avec.
 * Maintenant nous devons installer les libraires externes utilisées par le framework. Il y a plusieurs manières de faire cela, par exemple avec la commande checkout. Une autre manière est d'utiliser des propriétés. Vous pouvez les configurer manuellement, mais il est très simple d'utiliser le fichier nommé .svnprops fourni avec le logiciel qui configure le nécessaire:


 * 1) Faites un clic droit sur votre dossier de travail
 * 2) Sélectionnez le dernier item dans la liste déroulante qui devrait être les
 * 3) Sélectionnez le tableau  et cliquez sur le bouton
 * 4) Cliquez sur  et sélectionnez le fichier   fourni avec le cadriciel.
 * 5) Confirmez avec   pour la configuration des propriétés.
 * 6) Confirmez avec   pour les propriétés du dossier
 * 7) Maintenant faites un clic droit sur votre copie de travail et sélectionnez   pour télécharger les librairies externes.

Maintenant nous devons installer les librairies externes utilisées par le framework. Il y a différentes façons de faire cela, par exemple avec la commande "checkout". Une autre façon est d'utiliser les propriétés de la même façon que dans la version "core"
 * Pour la version "compat" (anciennement "trunk")
 * 1) Faites un clic droit sur votre dossier préféré et exécutez
 * 2) Choisissez   et collez l'URL
 * 3) Choisissez   et changez le dossier par défaut, par exemple , pour   si vous voulez.
 * 4) Confirmez avec


 * Mettre à jour la copie de travail
 * Cliquer droit sur votre le répertoire de votre pywikibot et choisissez

Raccourci en ligne de commande
Pour que votre code puisse être développé à l'extérieur du répertoire pywikibot source, ajouter quelque chose comme: à un fichier qui est lancé à l'initialisation, par exemple ~/.bashrc - il n'est ainsi pas nécessaire de retaper l'export PYTHONPATH à chaque connexion. Adapter évidemment les chemins à votre installation.

De la même manière, la variable PYWIKIBOT_DIR peut être incluse pour donner le répertoire dans lequel les informations utilisateurs sont stockées (et principalement le fichier user-config.py qui contient les données d'identification du robot).

Utilisateurs de Windows : créer un raccourci
Créer un raccourci rapide vers la console en ligne de commandes (utilisateurs de Windows) :

Si vous installez Pywikibot dans un dossier comme "Mes documents", il serait ennuyeux d'utiliser à chaque fois la commande "chdir" pour aller dans le dossier pour exécuter les robots.

Sur Windows, vous pouvez créer un raccourci qui ouvrira la console et que vous pouvez utiliser pour exécuter facilement des robots. Suivez simplement ces étapes pour en créer un :
 * 1) Faites un clic droit sur le dossier où Pywikibot est installé.
 * 2) Cliquez sur "Créer un raccourci". Une nouvelle icône avec la flèche indicatrice sera crééée.
 * 3) Faites un clic droit sur le nouveau raccourci, et cliquez sur "Propriétés".
 * 4) Dans la fenêtre des propriétés, dans le champ "Cible", tapez "cmd.exe".
 * 5) Dans le champ "Démarrer dans" entrez l'adresse complète du dossier de Pywikibot.
 * 6) Cliquez sur "OK".
 * 7) Cliquez sur le raccourci et cmd.exe s'ouvre avec le chemin d'accès déjà affiché.
 * Si vous faites F5 pour actualiser la fenêtre (ou que vous ré-ouvrez les propriétés du raccourci), vous remarquerez que l'icône aura changée.

Mise-à-jour
La suite logiciel pywikibot est un logiciel en perpétuel version bêta. Des corrections de bogues, de nouvelles options, de nouveaux comportements et des changements dans le logiciel Mediawiki conduisent à la sortie régulière de nouvelles versions et nécessitent que le code soit mis à jour. Mettez donc à jour votre branche régulièrement (tous les jours ou au moins une fois par semaine).

Mettre à jour l'installation à partir des sauvegardes journalières

 * Si vous utilisez une version "journalière", le processus est un peu plus compliqué. Vous devez re-télécharger une archive de cette page. Avant de l'installer, sauvegardez votre fichier de configuration et vos scripts  (user-config.py, un fichier définition de famille de wiki, un script personnel que vous auriez créé, et tout export XML que vous utilisez pour un wiki). Remplacez votre répertoire pywikibot par la nouvelle version. Restaurez vos fichiers personnels. Si vous avez un doute, n'écrasez rien mais garder une sauvegarde entière de votre ancien répertoire, pour être sur de ne rien perdre d'important.

Mettre à jour avec git

 * Si vous avez utilisé Git pour télécharger Pywikibot, vous devrez aller dans son dossier et exécuter la commande suivante :


 * Si vous utilisez une version compilée, le processus est un peu plus compliqué. Vous devez re-télécharger une copie complète via [$pwb_nightly ce lien]. Avant de l'installer, sauvegardez vos fichiers de configuration et vos scripts (user-config.py, tout fichier "family" ou script personnalisé que vous auriez créé, et tout fichier XML de dump que vous utiliseriez actuellement pour un wiki). Remplacez votre dossier Pywikibot par la nouvelle version que vous venez de télécharger. Restaurez vos fichiers de configuration. Si vous n'êtes pas sûr de ce que vous faites, n'effacez rien mais gardez une sauvegarde de votre ancien dossier Pywikibot, pour éviter de perdre tout fichier important.

Mise-à-jour automatique sur Wikimedia Labs ou Toolserver
Pour les mises à jour automatique, vous pouvez créer un script bash update à la racine et y insérer les commandes suivantes, Pour les Labs WMF (dans le groupe approprié): puis lancer  et insérer ce qui suit pour lancer votre bot tous les jours 00:00AM (minuit): Notez bien: dans ces codes, yourservicegroup est le nom de votre groupe de service (sans -local).

Pour une mise à jour automatique dans toolserver il est simplement nécessaire de faire la même chose en remplacant "/data/project/yourservicegroup/" par "/data/project/yourusername/" avec yourusername ... votre nom d'utilisateur !

Mise à jour de svn
Pour mettre à jour le code : Pour mettre à jour le code (branche compat) :

mettre à jour avec TortoiseSVN
Mettre à jour la copie de travail est très simple: clic-droit sur le répertoire et choisir

Compat
Le framework de Pywikibot est un code plutôt gros et complexe et en tant que tel il nécessite des modules externes de Python (librairies) issus d'autres sources, et également pour fonctionner correctement. Les dépendances peuvent être installées manuellement ou automatiquement (pas encore supporté par "core").

Si un problème survient pendant l'installation des dépendances, veuillez fournir un fichier de rapport de bogue ou écrire à la maillist de Pywikipedia-l.

Automatique (recommandé)
Si possible, c'est le moyen recommandé. Le résultat sera identique sur toute les machines. Vous devez simplement exécuter votre script favori après l'installation, par exemple  et pywikibot vous demandera si vous voulez installez installer les paquets manquants, et continuera de poser des questions sur la manière dont vous voulez configurer votre copie.

Les paquets seront installés si possible à partir du gestionnaire de l'OS (tous les Linux, pas les Windows). Si les paquets sont introuvables, ils seront téléchargés en tant qu'archive depuis la source originale, extraits et installés. Aucours de ce processus, quelques paquets doivent être légèrement modifiés pour qu'ils travaillent sans problèmes avec pywikibot. Cette modification nécessite un programme appelé patch (patch.exe sous windows). Malheureusement il n'est pas disponible par défaut sous windows, il est cependant possible d'utiliser cette version adaptée (gnuwin32 patch.exe)

Il est utile de mentionner que - malgré l'utilisation des installation par gestionnaire de paquet OS - tous les fichiers sont installés localement dans des répertoires externals/ de pywikibot. C'est une fonctionnalité très utile pour les utilisateurs qui n'ont pas les permissions d'installer des logiciels sur le système, par exemple les non administrateurs.

Manuelle (utilisateurs experts)
Pour installer à la main les paquets nécessaires, vous devez d'abord les identifier. Une liste exhaustive externals/__init__.py est disponible. Elle contient: Ceux qui vous sont nécessaires dépendent beaucoup des fonctionnalité que vous cherchez à exploiter. Si vous n'êtes pas sur, utilisez le mode automatique décrit ci-dessus. Si les dépendances sont satisfaites tout se déroulera sans encombre, dans le cas contraire le cadriciel se plaindra et demandera si il doit installer automatiquement les paquets manquants.
 * le code "core" du cadriciel:
 * i18n [git submodule]
 * spelling [git submodule]
 * httplib2 [git submodule]
 * BeautifulSoup.py [included since important]
 * patch.exe
 * En fonction du script qui seront utilisés:
 * opencv, opencv/haarcascades [git submodule]
 * pycolorname [git submodule]
 * irclib
 * mwparserfromhell
 * parse-crontab
 * odfpy
 * openpyxl
 * python-colormath
 * jseg, jseg/jpeg-6b
 * mlpy
 * music21
 * ocropus
 * pydmtx
 * py_w3c
 * zbar
 * (slic)
 * (bob, xbob_flandmark)

Core
Utilisez  pour installer les dépendances.

Installation sur Wikimedia Labs ou Toolserver
Pour installer votre robot sur les serveurs Wikimedia et le lancer depuis cet endroit, familiarisez vous avec l'environnement Wikimedia Labs/Tool Labs.

Lors de l'étape suivante, vous devez obtenir plusieurs comptes (pour labs, pour le projet tools, pour votre outil), fournir une clé ssh, ... La manière de procéder est décrite en détail sur la page Setup pywikibot on Labs.

Le dépot du code de Pywikibot a été migré (de svn) sur git, veuillez vous informer au préalable sur Manual:Pywikipediabot/Gerrit.

Les projets bots d'ici sont obsolètes. Utilisez désormais tools, et pour celà suivez Tools/Help pour obtenir un compte. Créez ensuite votre outil (service group).

Si vous avez utilisé et maitrisé toolserver, un tutoriel de migration migrating from toolserver est disponible.

Vous êtes maintenant prêt à démarre. Indentifiez vous sur le projet tool de Labs: $ ssh USERNAME@tools-login.wmflabs.org basculez vers votre compte d'outil avec maintainer@tools-login:~$ become toolname local-toolname@tools-login:~$

Installer ou cloner maintenant le code de pywikibot pour votre compte outil comme décrit ci dessous.

core
De manière similaire à a procédure décrite dans ce mail: $ git clone --recursive https://gerrit.wikimedia.org/r/pywikibot/core.git pywikibot-core $ cd pywikibot-core

Vous devez maintenant configurer pywikibot. Choisissez l'une des recettes suivante pour configurer votre système:
 * exécuter
 * lancer votre script favori (par exemple ). Dans une installation fraîche une série de question vous est posées et pywikibot génère les fichiers de configuration en fonction des réponses.
 * si vous avez déja des fichiers de configurations datant d'une installation précédente, vous pouvez les copier aux endroits appropriés (par exemple pywikibot-compat/).

Further things you might have to do (depending on what bot scripts you want to run) is to setup all externals properly - which still has to be done manually in core $ cd externals $ cat README and follow the instructions there.

You will also have to enter the password for your bot eventually.

Now you have finished the configuration of core and can continue setting up the jobs to execute.

compat
Effectuer: $ git clone --recursive https://gerrit.wikimedia.org/r/pywikibot/compat.git pywikibot-compat

Now, as similarly described in the core section above, you have to setup pywikibot. Choose any one of the following processes to configure your system:
 * Execute
 * Run your favorite bot script (e.g. ) since you are doing this in a fresh clone, it will trigger a bunch of questions on how you want to configure your local copy, answer them carefully in order to proceed.
 * If you already have a config file(s) from a previous version, you can copy those existing files into the right places (e.g. pywikibot-compat/).

See this article for more details on configuring your bot including creating the files manually. You may setup all externals manually if you want - but this is not needed in compat, confer Manual:Pywikipediabot/Installation for further info.

You will also have to enter the password for your bot eventually.

Now you have finished the configuration of compat and can continue setting up the webspace and jobs to execute.

Installer l'espace web
Per default, the directory listing on http://tools.wmflabs.org/TOOLNAME is disabled. If you want to allow it for all users, login to your tool account (as already described) and $ cd ~/public_html $ echo Options +Indexes >> .htaccess

If you run a bot with the  option, you will find the log files within the logs/ directory. If you want to allow users to access it from the web, do $ cd ~/public_html $ mkdir logs $ cd logs $ ln -s ~/pywikibot-core/logs cor

If you want a specific file type to be handled differently by your browser, e.g. .log files like text files, use (confer this) $ echo AddType text/plain .log >> .htaccess and (don't forget to) clear your browsers cache afterwards.

Next you might want to consider you cgi-bin directory $ cd ~/cgi-bin follow the hints given at wikitech:Nova Resource:Tools/Help exactly, e.g. even the two commands

$ /usr/bin/python     # valid $ /usr/bin/env python # in-vali work and do the same in shell, only the first one is valid and works here, the second is invalid! Another point to mention is that PHP scripts go into public_html, not cgi-bin. Python scripts on the other hand can be placed in public_html or cgi-bin as you wish. I would recommend to use public_html for documents and keep it listable, whereas cgi-bin should be used for CGI scripts and be protected (not listable).

Configurer le lancement des tâches
In order to setup the submission of the jobs you want to execute and use the grid engine you should first consider wikitech:Nova Resource:Tools/Help and if you are familiar with the Toolserver and its architecture consult Migrating from toolserver also.

In general labs uses SGE and its commands like qsub</tt> et al, this is explained in this document which you should use in order to get an idea which command and what parameters you want to use.

An infinitely running job (e.g. irc-bot) like this (cronie</tt> entry from TS submit host): 06 0 * * * qcronsub -l h_rt=INFINITY -l virtual_free=200M -l arch=lx -N script_wui $HOME/rewrite/pwb.py script_wui.py -log devient $ jsub -once -continuous -l h_vmem=256M -N script_wui python $HOME/pywikibot-core/pwb.py script_wui.py -log ou plus simplement $ jstart -l h_vmem=256M -N script_wui python $HOME/pywikibot-core/pwb.py script_wui.py -log the first expression is good for debugging. Memory values smaller than 256MB seam not to work here, since that is the minimum. If you experience problems with your jobs, like e.g. Fatal Python error: Couldn't create autoTLSkey mapping you can try increasing the memory value - which is also needed here, because this script uses a second thread for timing and this thread needs memory too. Therefore use finally $ jstart -l h_vmem=512M -N script_wui python $HOME/pywikibot-core/pwb.py script_wui.py -log Now in order to create a crontab follow Scheduling jobs at regular intervals with cron and setup for crontab file like: $ crontab -e and enter PATH=/usr/local/bin:/usr/bin:/bin 06 0 * * * jstart -l h_vmem=512M -N script_wui python $HOME/pywikibot-core/pwb.py script_wui.py -lo

Configuration supplémentaire
Furthermore additional tools to support you and your bot at work are available:
 * wikitech:Nova Resource:Tools/Help, basically out-of-the-box but just for a short time period
 * wikitech:Nova Resource:Tools/Help
 * Gerrit/New repositories
 * Git/New repositories/Requests

Créer les fichiers utilisateurs
En guise de dernière étape, vous devez créer les fichiers de configurations utilisateurs. Le principal est. Si vous exécuter votre script favori juste après l'installation,  par exemple, pywikibot va vous poser des questions sur la manière de configurer votre copie locale et va créer ces fichiers. Vous pouvez aussi lancer generate user files.py pour le même résultat.

Lancer sous Windows
Référez vous à la page Manual:Pywikibot/Windows.

Vérifier votre installation
Avec la branche core, lancer la ligne de commande  devrait demander le login et le mot de passe de votre robot, puis notifier Logged in on "somewiki":"lang" as "bot username"</tt>.