Manuel:Pywikibot/flickrripper.py
Le dépôt Git de Wikimedia a ce fichier : scripts/flickrripper.py |
Scripts Pywikibot |
---|
|
flickrripper est un script Pywikibot destiné à facilement téléverser un grand nombre d'image de Flickr vers Wikimedia Commons.
Actuellement son développement en est à un stade préliminaire
Cet outil à été réclamé par des contributeurs de Commons:Batch uploading/Flickr images by user.
Installation
Flickrripper fait partie Pywikibot. Vous devez d'abord installer pywikibot. Vous pouvez trouvez sur cette page un manuel d'installation de pywikibot.
Une installation à partir de git ou de la version quotidienne (nightly) est recommandée.
À la suite de pywikibot, trois autres paquets python doivent être disponibles ou installés.
Easy install
Pour les installaler grace à Easy install, veuillez installer la dernière version des setuptools (par exemple à partir de http://pypi.python.org/pypi/setuptools).
- Python Image Library
Python Image Library (PIL) est utilisée pour l'affichage de l'image.
Vous pouvez l'installer avec cette commande à entrer dans un terminal :
$ easy_install PIL
ou
$ pip install --user pillow
- Le kit FlickrAPI
- Python Flickrapi kit est utiliser pour communiquer avec l'api Flickr.
Vous pouvez l'installer avec cette commande à entrer dans un terminal :
$ pip install --user "flickrapi>=1.4.5,<2"
- TkInter
- cette bibliothèque [1] est installable à partir de votre gestionnaire de paquet habituel; n'oubliez pas d'installer également
python-imaging-tk
.
pip
Les paquets optionnels suivants peuvent être installé d'un seul coup en utilisant pip
, en utilisant vos persmissions utilisateurs quelles qu'elles soient, avec la commande:
$ pip install --user "flickrapi>=1.4.5,<2" pillow
Authentification à Flickr
- Flickr API key
- Vous devez posséder une clé de l'API Flickr valide pour exécuter ce programme. Vous pouvez en récupérer sur cette page flickr. Réclamez une clé non commerciale.
- Configuration
- modifierz votre user-config.py avec votre éditeur de texte préféré, et ajoutez-y ceci:
# Using the Flickr api
flickr = {
'api_key': 'YOUR_API_KEY', # Provide your key!
'api_secret': 'YOUR_API_SECRET', # Provide your secret!
'review': False, # Do we use automatically make our uploads reviewed? (True or False)
'reviewer': 'REVIEWER_NAME', # If so, under what reviewer name?
}
- api_key : Fournir votre clé d'API
- review : Si vous voulez marquer toutes les images comme revues automatiquement. Ne positionnez à "True" que si vous êtes administrateur ou relecteur sur Commons !
- reviewer : Ajouter votre nom d'utilisateur ici si vous voulez marquer les images vérifiées par vous.
Le programme vous demandera de vous identifier lors du premier lancement (maintenant?) pour confirmation.
Le login textuel ne fonctionne pas (nécessite JavaScript), il est donc impossible de s'authentifier dans un terminal (comme sur Tool Labs).
Il est préférable d'utiliser flickrripper.py
sur votre ordinateur personnel afin que le formulaire de confirmation s'affiche dans votre navigateur habituel.
Utilisation
Pour lancer Flickrripper vous devez vous positionner dans le répertoire Pywikibot. Puis taper les commandes suivantes:
$ python pwb.py flickrripper
avec quelques unes des options suivantes, celles qui sont nécessaires sont en gras.
Notez:
- le script ne téléverse jamais des fichiers déja chargés (les fichier sont identifié par une emprunte (hash))
- à moins que le fichier que vous téléversez possède un titre, une description etc., modifiez le script pour ajouter un préfixe aux noms des fichiers: cherchez dans le code
getFilename
, et remplacez "Flickr" par votre préfixe de nom de fichier dansproject='Flickr'
(par exemple le nom de la catégorie que vous utilisez).
Options pour spécifier l'ensemble d'images que vous voulez traîter:
- l'une des options suivante:
- -group_id - L'identifiant du groupe Flickr pertinent. Le script travaillera sur toutes les images de ce groupe.
- -photoset_id - L'identifiant du jeu d'images Flickr pertinent. Le script travaillera sur toutes les images de jeu.
- -user_id - L'identifiant de l'utilisateur pertinent. Le script travaillera sur toutes les images de cet utilisateur.
/!\ Le nom de l'utilisateur n'est pas l'identifiant ! Par exemple, l'id pour l'utilisateur The Library of Congress est 8623220@N02 Il est récupérable à cet endroit.
- L'un ou la totalité de:
- -start_id - Démarrez à la photo identifiée par cet id (par exemple pour reprendre un téléchargement interrompu). En combinaision avec un -group_id/-photoset_id/-user_id.
- -end_id - Stopper à la photo de cet id (utile pour faire le travail en plusieurs fois, reprendre avec -start_id)
Option pour spécifier la manière de travailler chaque image:
- -tags - Filtrer en excluant certaines étiquettes (pour l'instant une seule)
- -flickrreview - Marquer comme revu "flickrreviewed", écrase le paramètre de votre user-config.py.
- -reviewer - Définit le relecteur pour "flickrreview", écrase le paramètre de la configuration.
- -override - Enlever la licence existente et la remplacer par une de votre choix. Utile pour transférer des photos sous droit d'auteurs pour lesquelles vous avez obtenu les permissions par OTRS. Utiliser avec prudence !
- -removecategories - Ne pas ajouter les catégories des suggestions automatiques.
- -addcategory - Ajouter manuellement une catégorie. Elle vous sera demandée après le lancement et ne sera pas montrée dans la description de la boîte de confirmation. On ne peut pas encore spécifier plusieurs catégories, mais vous pouvez en passer plusieurs comme si elle était unique de la manière suivante:
Premièrecatégorie]][[Category:SecondeCatégorie
. - -autonomous - Pour téléverser sans montrer les images. Utiliser avec prudence !
Syntaxe:
$ python pwb.py flickrripper -user_id:8623220@N02 -removecategories -addcategory
Dépannage
Traceback (most recent call last): File "flickrripper.py", line 41, in <module> from PIL import Image, ImageTk # see: http://www.pythonware.com/products/pil/ ImportError: No module named PIL
Vous pouvez corriger ce problème par une installation PIL manuelle (pas par easy_install): «Si vous utilisez une version précompilée de PIL, vous pourriez devoir installer d'autres paquets pour utiliser ImageTk. Sur Ubuntu par exemple, python-imaging et python-imaging-tk».