Allez cette fois je dis que c’est bon. Je ne vais pas imposer à quelqu’un d’utiliser gtk ou plus lourd avec ce script.
Pour ma part, je lance le script, puis je récupère sa sortie que j’affiche avec gxmessage.
Vous pouvez faire de même avec zenity, xmessage ou autre…
Pour fonctionner, le script requiert le paquet python-poster
Alors, le script :
[code]#!/usr/bin/env python
-- coding:Utf-8 --
Cree le 08 juin 2011 18:52:52
Derniere modification: 08 juin 2011 18:52:52
“”"
Auteur : thuban (thuban@singularity.fr)
licence : GNU General Public Licence
Description : Permet d’uploader une image sur pix.toile-libre.org
Pratique en utilisation avec un gestionnaire de fichier
“”"
try:
import sys
import os
import urllib2
from poster.encode import multipart_encode
from poster.streaminghttp import register_openers
import re
except ImportError as err:
print (“Couldn’t load module. {0}”.format(err))
sys.exit(2)
def verif(argument):
image = argument
if (os.path.isfile(image)):
return image
else:
print(“Commande ou fichier invalide”)
sys.exit(2)
def affiche(adresses):
print('Afficher l’image : ’ + adresses[0])
print('Accéder à l’image : ’ + adresses[1])
print('Insérer la miniature dans un forum : ’ + adresses[2])
print('Insérer l’image dans un forum : ’ + adresses[3])
print('Insérer la miniature à votre site : ’ + adresses[4])
print('Insérer l’image à votre site : ’ + adresses[5])
def main():
image = verif(sys.argv[1])
# upload de l'image
register_openers()
with open(image, 'rb') as img:
d, h = multipart_encode({'MAX_FILE_SIZE' : 15360000, 'img' : img})
req = urllib2.Request('http://pix.toile-libre.org/?action=upload', d, h)
f = urllib2.urlopen(req).read()
adresses=re.findall(r'<textarea>(.*?)</textarea>', f)
affiche(adresses)
return 0
if name == ‘main’:
main()
vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4
[/code]
Pour ma part, je lance ce programme via un gestionnaire de fichier, et affiche le retour dans gxmessage :
