•  » Outils
  •  » pywiUpload, un script pour générer et uploader vos galeries

#1 2009-06-28 18:33:59

saimon
Membre
2006-12-04
367

pywiUpload, un script pour générer et uploader vos galeries

Hello,

je vous propose un petit script python qui permet de générer vos galeries d'images, et de les uploader sur un serveur FTP.
Il y a déjà pas mal de scripts du genre dans les extensions, différentes raisons m'ont amené à en coder un nouveau:
- python c'est bien :-). J'avais envie d'apprendre ce language et je cherchais une idée de script à faire.
- certaines fonctionnalités que les autres scripts n'ont pas (à ma connaissance):
  - générer des miniatures carrées
  - gérer l'upload ftp, avec un «mini-client ftp»
  - renommer les images
- et certaines fonctionnalités plus classiques (ajouter un texte de copyright, choisir la qualité jpg)

Pour l'installation / utilisation, tout est dans le README, en anglais, voilà un résumé en français :

Téléchargement:
------------------------

- http://piwigo.org/ext/extension_view.php?eid=300
- http://hg.saimon.org/pywiupload/

À dézipper où vous voulez.

Installation des dépendances:
------------------------------------


- Python Imaging Library (PIL)
- exiv2 (for exif datas)
- ConfigObj

Ubuntu:

Code:

$ sudo apt-get install python-imaging python-pyexiv2 python-configobj

Fedora (as root):

Code:

$ yum install python-imaging pyexiv2 python-configobj

Ca devrait fonctionner sur d'autres OS (Windows, Mac) mais j'ai pas testé. Les retours sont les bienvenus si vous testez ;-)

Utilisation
-----------


lancer le script depuis le répertoire où se trouvent les images:

Code:

$ cd /path/to/images
$ python /path/to/pywiUpload/pywiUpload.py

Options:
- lancer le script avec le répertoire où se trouvent les images en argument:

Code:

$ cd /path/to/pywiUpload/
$ python pywiUpload.py -i /path/to/images

- on peut aussi donner un fichier de config différent:

Code:

$ cd /path/to/pywiUpload/
$ python pywiUpload.py -c mypywiUpload.conf -i /path/to/images

Paramètres
-------------


Adaptez les paramètres dans le fichier de configuration (pywiUpload.conf):
- taille des images et miniatures
- qualité JPG
- prefix des miniatures
- paramétres FTP

Options
-------


certaines fonctionnalités sont optionnelles (1=enable / 0=disable):
- ajout d'un copyright
- garder les grandes images
- garder les données exif
- faire des miniatures carrées

Voilou, les retours d'utilisation, bugs, et idées de fonctionnalités sont les bienvenus ;)

Dernière modification par saimon (2010-07-22 22:05:20)

Hors ligne

#2 2009-06-28 18:35:58

saimon
Membre
2006-12-04
367

Re: pywiUpload, un script pour générer et uploader vos galeries

et une petite question: est-il possible de lancer la synchronisation à distance, par une url ou autre ? avec les webservices ?

Hors ligne

#3 2009-06-28 21:19:01

ddtddt
Équipe Piwigo
Quetigny (21) - France
2007-07-27
14449

Re: pywiUpload, un script pour générer et uploader vos galeries

saimon a écrit:

et une petite question: est-il possible de lancer la synchronisation à distance, par une url ou autre ? avec les webservices ?

oui pLoader le fait
[extension by plg] pLoader for Linux
[extension by plg] pLoader for Windows


Vous aimez Piwigo alors n'hésitez pas à participer avec nous, plus d'infos sur la page "Contribuer à Piwigo". Si vous n'avez pas beaucoup de temps et que vous souhaitez nous soutenir vous pouvez aussi le faire par un don.

Hors ligne

#4 2009-06-28 21:20:06

VDigital
Former Piwigo Team
Paris (FR)
2005-05-04
15124

Re: pywiUpload, un script pour générer et uploader vos galeries

Désolé, pLoader ne fait pas une synchro. Si j'ai une nouvelle image dans un répertoire même sélectionné par pLoader, les nouvelles images de pLoader monteront mais pas celle du répertoire.


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#5 2009-06-28 21:28:51

ddtddt
Équipe Piwigo
Quetigny (21) - France
2007-07-27
14449

Re: pywiUpload, un script pour générer et uploader vos galeries

Je rectifies ce que je voulais dire,
Ploader par les webservices "rentre" les photos en base pour ne pas avoir besoins de synchroniser. En répondant, j'ai interprété que c'est ce que tu voulais faire pour ton script.


Vous aimez Piwigo alors n'hésitez pas à participer avec nous, plus d'infos sur la page "Contribuer à Piwigo". Si vous n'avez pas beaucoup de temps et que vous souhaitez nous soutenir vous pouvez aussi le faire par un don.

Hors ligne

#6 2009-06-28 21:40:47

VDigital
Former Piwigo Team
Paris (FR)
2005-05-04
15124

Re: pywiUpload, un script pour générer et uploader vos galeries

saimon a écrit:

- générer des miniatures carrées

Pour moi, c'est inutile. => Miniatures carrées


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#7 2009-06-28 22:19:56

Gotcha
Equipe Piwigo
Pierrelatte (26)
2007-03-14
13324

Re: pywiUpload, un script pour générer et uploader vos galeries

VDigital a écrit:

saimon a écrit:

- générer des miniatures carrées

Pour moi, c'est inutile. => Miniatures carrées

Pour toi peux être ^^
Mais tout le monde n'a pas ta facilité :-)


Ayez comme premier réflexe de consulter le wiki.
Ensuite, veuillez effectuer une recherche sur le forum avant de poser votre question.

LE FAIRE EST LE REVELATEUR DE L'ETRE

Hors ligne

#8 2009-06-28 22:24:54

VDigital
Former Piwigo Team
Paris (FR)
2005-05-04
15124

Re: pywiUpload, un script pour générer et uploader vos galeries

Gotcha a écrit:

VDigital a écrit:

saimon a écrit:

- générer des miniatures carrées

Pour moi, c'est inutile. => Miniatures carrées

Pour toi peux être ^^
Mais tout le monde n'a pas ta facilité :-)

Non, non, non, non, c'est à la porté de tout le monde...
[Forum, post 108575 by VDigital in topic 15113] [Résolu] Logiciel pour faire des thumbnails carrés ?


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#9 2009-06-29 00:05:32

saimon
Membre
2006-12-04
367

Re: pywiUpload, un script pour générer et uploader vos galeries

ddtddt a écrit:

Ploader par les webservices "rentre" les photos en base pour ne pas avoir besoins de synchroniser.

d'accord, j'avais regardé rapidement dans le code de ploader mais pas trouvé comment c'est fait.
donc pas méthode pour lancer la synchronisation ?

VDigital a écrit:

saimon a écrit:

- générer des miniatures carrées

Pour moi, c'est inutile. => Miniatures carrées

certes, mais ca nécessite du code et tu «gaches» un peu de bande passante, autant générer directement des vignettes carrées (si c'est ce qu'on souhaite à long terme).

Hors ligne

#10 2009-06-29 00:48:57

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12277

Re: pywiUpload, un script pour générer et uploader vos galeries

pLoader communique avec Piwigo grâce à l'API web et notamment l'ajout de photo se fait grâce aux méthodes pwg.images.addChunk et pwg.images.add, voir [wiki] pwg.images.add & pwg.images.addChunk. J'y donne un exemple d'utilisation en Perl. Mais on doit pouvoir faire la même chose en Python, ce ne sont que des requêtes HTTP avec la méthode POST.

Cela faisait très longtemps que l'idée d'un mini client FTP me trottait dans la tête, mais je trouvais ça compliqué, trop compliqué. Alors j'ai ajouté la méthode pwg.images.add dans l'API web. C'est beaucoup plus simple et plus propre. Je te conseille vivement d'utiliser cette technique plutôt que FTP+synchronisation. Actuellement, on ne peut pas "proprement" lancer de synchronisation autrement qu'avec son navigateur. Si on voulait faire proprement, il faudrait ajouter une méthode dans l'API. C'est faisable, mais étant donné l'existence de pwg.images.add, cela me semble inutile.

Les miniatures carrées, j'espère que pLoader va les gérer bientôt, moi j'adore :-)

En tout cas, l'apparition d'un script en Python pour gérer la préparation et l'ajout, c'est une très bonne nouvelle. Envisages-tu de l'ajouter dans les extensions de Piwigo?

En ligne

#11 2009-06-29 08:06:59

VDigital
Former Piwigo Team
Paris (FR)
2005-05-04
15124

Re: pywiUpload, un script pour générer et uploader vos galeries

saimon a écrit:

VDigital a écrit:

saimon a écrit:

- générer des miniatures carrées

Pour moi, c'est inutile. => Miniatures carrées

certes, mais ca nécessite du code et tu «gaches» un peu de bande passante, autant générer directement des vignettes carrées (si c'est ce qu'on souhaite à long terme).

Cette solution ne gâche pas plus de bande passante que de faire des miniatures de 66k là où 5/10k seraient suffisants.
Certes les miniatures carrées ont un avantage.
Ceci dit conserver la possibilité d'avoir les 2 formes de miniature et physiquement qu'une seule version sur le server présente un avantage indéniable. L'évolution des templates démontrera un jour.
Il y a plusieurs projets de graphisme connus mélangeant d'une part les miniatures respectant le format de l'image, et d'autre part des miniatures carrées.
Si tu fais toutes tes miniatures carrées dès aujourd'hui, tu ne bénéficieras pas de la créativité de Stripy.
Mais ce n'est que mon avis. ;-)


PJ: La présentation de la page "Au hasard" avec des positions qui varieront en fonction de la taille des miniatures, et ...


Images attachées


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#12 2009-06-29 10:02:01

saimon
Membre
2006-12-04
367

Re: pywiUpload, un script pour générer et uploader vos galeries

plg a écrit:

pLoader communique avec Piwigo grâce à l'API web et notamment l'ajout de photo se fait grâce aux méthodes pwg.images.addChunk et pwg.images.add, voir [wiki] pwg.images.add & pwg.images.addChunk. J'y donne un exemple d'utilisation en Perl. Mais on doit pouvoir faire la même chose en Python, ce ne sont que des requêtes HTTP avec la méthode POST.

Cela faisait très longtemps que l'idée d'un mini client FTP me trottait dans la tête, mais je trouvais ça compliqué, trop compliqué. Alors j'ai ajouté la méthode pwg.images.add dans l'API web. C'est beaucoup plus simple et plus propre. Je te conseille vivement d'utiliser cette technique plutôt que FTP+synchronisation. Actuellement, on ne peut pas "proprement" lancer de synchronisation autrement qu'avec son navigateur. Si on voulait faire proprement, il faudrait ajouter une méthode dans l'API. C'est faisable, mais étant donné l'existence de pwg.images.add, cela me semble inutile.

d'accord, merci pour toutes ces précisions. Par contre, si je comprends bien, pwg.images.add ajoute les images dans un répertoire "upload" et ensuite associe les images à une catégorie directement dans la base. Donc, les images se retrouvent toutes dans un même répertoire et on les gère avec des catégories virtuelles ? comme pour pLoader ?

Je pense rester sur le mini-client ftp, car pLoader utilise cette méthode (pwg.images.add) et je n'ai pas envie de marcher sur ces plates-bandes ;-), et je n'ai jamais été fan des catégories virtuelles, je préfère le concept simple des catégories physiques qui correspond à mon utilisation. Donc dans mon idée, pywiUpload c'est un petit script simple qui fait des catégories physiques par FTP (et pê plus tard une petite interface toute simple quand je me mettrais à PyGTK). Ceux qui veulent plus peuvent utiliser pLoader.

En tout cas, l'apparition d'un script en Python pour gérer la préparation et l'ajout, c'est une très bonne nouvelle. Envisages-tu de l'ajouter dans les extensions de Piwigo?

oui bien sur, mais avant j'aimerais avoir quelques retours de tests.

Dernière modification par saimon (2009-06-29 10:08:44)

Hors ligne

#13 2009-06-29 10:08:04

saimon
Membre
2006-12-04
367

Re: pywiUpload, un script pour générer et uploader vos galeries

VDigital a écrit:

Ceci dit conserver la possibilité d'avoir les 2 formes de miniature et physiquement qu'une seule version sur le server présente un avantage indéniable. L'évolution des templates démontrera un jour.

c'est un choix à faire en fonction de ce qu'on souhaite utiliser. C'est plus simple pour faire des thèmes / templates, et ca donne une page de présentation des miniatures moins «brouillon». Bref moi je préfère et je ne penses pas revenir en arrière, après chacun ses préfèrences.
Et puis tu aussi transformer des miniatures carrées en miniatures verticales ou horizontales ;-)

Hors ligne

#14 2009-06-30 00:08:18

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12277

Re: pywiUpload, un script pour générer et uploader vos galeries

saimon a écrit:

d'accord, merci pour toutes ces précisions. Par contre, si je comprends bien, pwg.images.add ajoute les images dans un répertoire "upload" et ensuite associe les images à une catégorie directement dans la base. Donc, les images se retrouvent toutes dans un même répertoire et on les gère avec des catégories virtuelles ?

Exactement. Il y a une séparation nette entre organisation physique des fichiers (dans le répertoire "upload") et vue logique (les catégories). Du coup, il n'y a plus de catégorie physique pour celui qui n'utilise que pLoader pour ajouter ses photos. Je précise que les fichiers ne sont pas tous dans le même répertoire, ils sont dans une arborescence automatique upload/<année>/<mois>/<jour> (et après discussion avec yoDan, il se pourrait qu'une future arborescence soit plutôt upload/<année>/<mois>/<jour>/<random>)

saimon a écrit:

comme pour pLoader ?

Oui, pLoader est un client "comme un autre" de l'API web de Piwigo. Pour le moment, il n'y a que 2 clients à ma connaissance: pLoader et tools/piwigo_remote.pl (inclus dans Piwigo) et une discussion a été engagée pour qu'un plugin LightRoom soit client également (mais c'est une autre histoire).

saimon a écrit:

Je pense rester sur le mini-client ftp, car pLoader utilise cette méthode (pwg.images.add) et je n'ai pas envie de marcher sur ces plates-bandes ;-)

Je comprends que tu préfère rester sur le principe du FTP car l'API web c'est l'inconnu (mais je parie que le jour où tu goûtes, tu ne reviendras pas au FTP). En tout cas, l'objectif de l'API est clair : qu'il y ait un maximum de client. Cela n'empiète absolument pas sur le domaine de pLoader. Bien au contraire : toute amélioration de l'API pour pywiUpload profitera in fine à pLoader et aux autres clients. Plus l'API sera utilisée, mieux ce sera.

saimon a écrit:

oui bien sur, mais avant j'aimerais avoir quelques retours de tests.

OK, je note que c'est à tester :-) J'essaie de te faire un retour "rapide".

En ligne

#15 2009-06-30 18:31:09

saimon
Membre
2006-12-04
367

Re: pywiUpload, un script pour générer et uploader vos galeries

plg a écrit:

Je précise que les fichiers ne sont pas tous dans le même répertoire, ils sont dans une arborescence automatique upload/<année>/<mois>/<jour>

d'accord, c'est vrai que c'est peut être pas plus mal ...
bon je regarderais du coté de l'api, quand j'aurais progressé en python ;-)

Hors ligne

  •  » Outils
  •  » pywiUpload, un script pour générer et uploader vos galeries

Pied de page des forums

Propulsé par FluxBB

github twitter facebook newsletter Faire un don Piwigo.org © 2002-2019 · Contact