#26 Le 07/02/2008, à 15:16
- FiZzZicO
Re : Envoyer une image vers uppix.net en 2 clics
Alors là, gé-nial! Voilà un script qui simplifie la vie!
Faudrait vraiment que j'aprenne à programmer un jour!
Hors ligne
#27 Le 07/02/2008, à 17:48
- pmd
Re : Envoyer une image vers uppix.net en 2 clics
Mise à jour du premier post, merci Miaou%%
Content que ça plaise
Hors ligne
#28 Le 07/02/2008, à 18:53
- Ras'
Re : Envoyer une image vers uppix.net en 2 clics
Pour que ce soit plus clair pour tout le monde (y compris les débutants) je l'aurais présenté comme ça :
Salut,
Voici un script que j'ai fait il y a un moment, et aujourd'hui je me suis dit que ça pouvais être cool de partager. Un petit script écrit en bash pour envoyer facilement une image vers pix.nofrag (par simple click droit, ou par une ligne de commande en console)
Exemples :
http://pix.nofrag.com/0/6/e/c23a8990c04 … faa60t.jpg
http://pix.nofrag.com/d/5/d/7d58a4032fe … 37805t.jpg
http://pix.nofrag.com/7/0/e/99779d32202 … f3a29t.jpgLes dépendances
Tout d'abord il faut vérifier que vous avez bien les paquets zenity et curl :sudo apt-get install zenity sudo apt-get install curl
Le script
Créez ensuite un dossier pour ranger le script, et un fichier vierge pour y mettre le script en questionmkdir .script_pmd && gedit .script_pmd/pix.sh
dans lequel vous collez le code ci dessous :
#!/bin/bash # Nom : pix.sh # But : Envoyer facilement des images sur pix.nofrag. # By pmd # Configuration FICHIER=$1 MIMETYPE=$(file -bi "$1") URL=pix.nofrag.com MAX_TAILLE_FICHIER=2000000 #2Mo (fixé par pix.nofrag) # Verifier le fichier avant envoi TAILLE_FICHIER=$(stat -c%s "$FICHIER") if [ $TAILLE_FICHIER -gt $MAX_TAILLE_FICHIER ]; then { echo "Erreur, le fichier $FICHIER est trop lourd ($TAILLE_FICHIER octets pour une limite de $MAX_TAILLE_FICHIER maximum)." zenity --warning --text="Erreur, le fichier $FICHIER est trop lourd ($TAILLE_FICHIER octets pour une limite de $MAX_TAILLE_FICHIER maximum)." exit 1 } fi # Envoyer le fichier, et enregistrer la page résultat TEMPFILE=$(tempfile) curl $URL -F monimage=@"$FICHIER" -F submit=Upload -H "Expect:" -o $TEMPFILE --progress-bar | zenity --progress --pulsate --auto-close --text="Envoi de <i>$1</i> vers $URL ..." # Analyser la page pour extraire les donnees VIEWPAGE=$(grep -oEm 1 '\[url\=([^]]*)' $TEMPFILE | sed 's/\[url\=//') IMAGE_BIG=$(grep -oEm 1 '\[img\]([^[]*)' $TEMPFILE | sed 's/\[img\]//') NB_IMG=$(grep -c '\[img\]' $TEMPFILE) if [ "$NB_IMG" -eq "1" ]; then # Si ya pas besoin de miniature { IMAGE_MINI=$IMAGE_BIG } elif [ "$NB_IMG" -ge "2" ] || [ "$NB_IMG" -le "3" ]; then # Si ya besoin de miniature { IMAGE_MINI=$(echo $VIEWPAGE | sed 's/\.html//')"t.jpg" } else { echo "La disposition de présentation du code à changé dans pix.nofrag." zenity --warning --text="La disposition de présentation du code à changé dans pix.nofrag." exit 2 } fi rm $TEMPFILE # Resultat de l'upload : le code a placer dans un forum BBCODE="[url=$VIEWPAGE][url]$IMAGE_MINI[/url][/url]" ZCODE="<lien url=\"$VIEWPAGE\"><image>$IMAGE_MINI</image></lien>" # ="<lien url="$VIEWPAGE"><image>$IMAGE_MINI</image></lien>" # On affiche echo "Lien : $VIEWPAGE" zenity --info --text=" <b>Fichier :</b> $1 <b>Type :</b> $MIMETYPE <b>Lien :</b>\n<i><small>$VIEWPAGE</small></i> <b>Image :</b>\n<i><small>$IMAGE_BIG</small></i> <b>Miniature :</b>\n<i><small>$IMAGE_MINI</small></i> <b>BBCode :</b>\n<i><small>$BBCODE</small></i> <b>ZCode :</b>\n<i><small>$ZCODE</small></i>"
Cliquez sur enregistrer et fermez gedit.
Fonctionnement en console
Il suffit de lancer le script avec le nom de l'image en argument : sh ~/.script_pmd/pix.sh Pictures/image.jpg
Exemple :pmd@polonux:~$ sh ~/.script_pmd/pix.sh 59238.jpg ######################################################################## 100,0% Lien : http://pix.nofrag.com/f/5/b/5ebf11b23b1dc399d8fa4bdfddcea.html
(une boite de dialogue vous donne tous les liens utiles)
Intégration du script au clic droit
Sous Xubuntu (XFCE et thunar) :
* à‰diter >> Configuration des actions personnalisées
* Bouton Nouveau (icà´ne +)
* Nom : Envoyer vers pix.nofrag
Description : ce que vous voulez
Commande : sh /chemin/du/script/pix.sh %f
* Dans l'onglet "Condition d'apparition", cochez "Images".
* On valide tout, et hop clic droit sur une image, envoyer vers pix, et on attendSous Ubuntu (Gnome et Nautilus) :
Mettre le fichier dans le dossier nautilus-scripts (et supprimer le dossier .scripts_pmd qui ne vous sert plus) et allez dans ce dossier avec nautilus :mv ~/.script_pmd/pix.sh ~/.gnome2/nautilus-scripts && rm -r scripts_pmd && nautilus ~/.gnome2/nautilus-scripts
faites clic droit sur le script > propriété > permissions > cocher "Autoriser l'exécution du fichier comme un programme"
Lorsque vous faites click droit sur une image vous pouvez choisir "scripts > pix.sh" et la photo sera automatiquement envoyée. Vous n'avez plus qu'a faire un copier-coller de la chaà®ne souhaitée (BBcode, lien direct, etc ...)
Have fun !
Dernière modification par Raskal (Le 07/02/2008, à 18:55)
Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
Les types awesome n'ont rien à prouver. À personne.
'k bye là
Hors ligne
#29 Le 07/02/2008, à 22:18
- pmd
Re : Envoyer une image vers uppix.net en 2 clics
Je pense qu'il ne faut pas prendre les gens pour des imbéciles, m'enfin, j'ai rajouté un lien vers ton post.
Hors ligne
#30 Le 07/02/2008, à 22:39
- Peat.hagore
Re : Envoyer une image vers uppix.net en 2 clics
Je pense qu'il ne faut pas prendre les gens pour des imbéciles, m'enfin, j'ai rajouté un lien vers ton post.
:lol::lol:
PS : si t'es un mauvais, une explication soit disant plus claire par Raskal.
Excellent
en tous les cas, Bon Boulot
un grand Merci de la part de tout le monde
Hors ligne
#31 Le 08/02/2008, à 00:17
- Ras'
Re : Envoyer une image vers uppix.net en 2 clics
Je pense qu'il ne faut pas prendre les gens pour des imbéciles, m'enfin, j'ai rajouté un lien vers ton post.
ok ok j'laisse tomber...
C'est juste que je vois pas mal de post de mec tout nouveaux qui ne comprennent rien à comment ça fonctionne donc c'était pour les aider, moi même j'aurais été incapable de me servir de ce script il y a un an et demi quand j'ai débarqué sous ubuntu, pourtant j'aurais adoré.
J'ai juste essayé d'aider un peu les nouveaux vu que ça coute rien...
Tant pis.
Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
Les types awesome n'ont rien à prouver. À personne.
'k bye là
Hors ligne
#32 Le 08/02/2008, à 00:50
- pmd
Re : Envoyer une image vers uppix.net en 2 clics
C'est pour ça que j'ai mis un lien en bas
Hors ligne
#33 Le 11/02/2008, à 16:37
- Ras'
Re : Envoyer une image vers uppix.net en 2 clics
Rajoutez cette ligne tout à la fin (tout à la fin sinon ça marche pas)
# On met le lien direct dans le presse papier
echo $IMAGE_BIG|xclip
Et le lien direct vers l'image est copié dans le clipboard, on le colle juste en faisant un clique du milieu
Sachant qu'on peut aussi remplacer $IMAGE_BIG par :
$VIEWPAGE : pour avoir le lien vers la page pix.nofrag
$BBCODE : pour avoir le BB code
$ZCODE : pour avoir le ZCode
( Merci encore à bling_bling de m'avoir aidé à trouver la solution et à LeGreffi3r de s'y être penché )
Dernière modification par Raskal (Le 11/02/2008, à 20:25)
Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
Les types awesome n'ont rien à prouver. À personne.
'k bye là
Hors ligne
#34 Le 07/03/2008, à 00:45
- Laurent82
Re : Envoyer une image vers uppix.net en 2 clics
Hello
J'ai fait une petite adaptation pour envoyer plusieurs images d'un seul coup.
On peut l'utiliser pareil, soit depuis la console, soit via "actions perso" ou "nautilus (actions|script)" (et je ne sais plus quoi pour konqueror).
Depuis la console, on peut même faire "script *.jpg" pour envoyer tous les .jpg du dossier
Par contre je n'affiche plus le résultat dans la fenêtre zenity mais dans une page web.
Par défaut la page s'ouvre Firefox mais on peut changer la première variable si on souhaite un autre navigateur (ou enlever "new-window si on ne veut pas que ça ouvre une nouvelle fenêtre).
Sinon je crois que ça n'utilise rien de plus que l'original. Ah si, "iconv", mais il ne sert pas à gros chose pour l'instant et je crois qu'il est installé par défaut de toute façon
#!/bin/bash
navigateur="firefox -new-window"
url=pix.nofrag.com
taille_max=2000000 #2Mo (fixé par pix.nofrag)
html=/tmp/pnf.html
tempfile=/tmp/tf.txt
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Images envoyées sur pix.nofrag.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">function selectText(field) { field.focus(); field.select(); }</script>
<style type="text/css">
body {font: normal 13px/1 Verdana, sans-serif; background:#E5DAB2}
dl {width: 760px; margin: auto;padding:20px;background:#F1F4DF}
img {float:left; border:0}
dt {display:block;text-align:center;font-weight:bold;font-size:16px;padding:10px;}
dd {margin: 0; padding: 0}
dd+dd {margin: 0 0 40px 170px;}
input {border:1px solid #ddd; display:block; margin: 4px 10px 10px; padding:5px;font-size:12px;color:#708090; width:550px}
</style>
</head>
<body>
<dl>' > $html
exec 3> >(zenity --progress --pulsate --auto-close --width=600)
for i in "$@"
do
if ! file -bi "$i" | grep -q "image\|flash"
then
zenity --error --text="${i##*/} n'est pas du bon type"
break
fi
if [ `stat -c%s "$i"` -gt $taille_max ]
then
echo "${i##*/} est trop lourd"
zenity --error --text="${i##*/} est trop lourd"
break
fi
m1="Envoi de l'image $i"
echo "$m1"
echo "# $m1" >&3;
curl $url -F monimage=@"${i}" -F submit=Upload -o $tempfile -H "Accept-Language: fr-fr" -H "Expect:" -#
# Analyser la page pour extraire les donnees
viewpage=$(grep -oEm 1 '\[url\=([^]]*)' $tempfile | sed 's/\[url\=//')
image_big=$(grep -oEm 1 '\[img\]([^[]*)' $tempfile | sed 's/\[img\]//')
nb_img=$(grep -c '\[img\]' $tempfile)
if [ "$nb_img" -eq "1" ]; then # Si ya pas besoin de miniature
image_mini=$image_big
elif [ "$nb_img" -ge "2" ] || [ "$nb_img" -le "3" ]; then # Si ya besoin de miniature
image_mini=$(echo $viewpage | sed 's/\.html//')"t.jpg"
else
me="La disposition de présentation du code semble avoir changé dans pix.nofrag"
echo "$me "
zenity --error --text="$me"
exit 1
fi
echo "
<dt>$num Image : "$i" </dt>
<dd><a href=\"$image_big\"><img src=\"$image_mini\" alt=\"\" /></a></dd>
<dd>
` sed -n '/="champ"/,/="ad"/p' $tempfile | sed -e 's/^</\t\t</g' -e :a -e '$d;N;2,4ba' -e 'P;D' | iconv -f ISO-8859-1 -t UTF-8 `
</dd>
" >> $html
rm $tempfile
done
exec 3>&-
if grep -qm1 url $html
then
echo "</dl></body></html>" >> $html
$navigateur file://$html
else
rm $html
fi
#35 Le 07/03/2008, à 01:28
- Laurent82
Re : Envoyer une image vers uppix.net en 2 clics
re-moi
J'ai oublié de préciser que dans les "Actions perso" de Thunar, il faudrait remplacer %f par %F pour pouvoir sélectionner plusieurs fichiers.
Puis je viens de voir que j'ai oublié un message d'erreur pour la console si le type est mauvais, mais ce n'est pas très important...
#36 Le 07/05/2008, à 18:21
- Ras'
Re : Envoyer une image vers uppix.net en 2 clics
Yep, j'ai un petit problème avec ton script depuis que je suis passé sous Hardy 64 ....
Quand je le lance, zenity me renvoie directement ça :
Fichier :
Type : ERROR: cannot open `' (No such file or directory)
Lien :
Image :
Miniature :
t.jpg
BBCode :
[url=][img]t.jpg[/img][/url]
ZCode :
<lien url=""><image>t.jpg</image></lien>
(je le lance en nautilus script, donc l'url de l'image est ok normalement...)
Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
Les types awesome n'ont rien à prouver. À personne.
'k bye là
Hors ligne
#37 Le 08/05/2008, à 01:03
- pmd
Re : Envoyer une image vers uppix.net en 2 clics
Si tu le lance via une console, ça te fait pareil ?
Hors ligne
#38 Le 08/05/2008, à 06:28
- Ras'
Re : Envoyer une image vers uppix.net en 2 clics
Non en console ça marche ><
D'ailleurs en passant pour parfaire ton script tu devrais faire un mode console qui n'utilise pas Zenity, mais c'est HS
EDIT : $1 n'est pas le lien vers l'image, si à la première ligne je met
zenity --info --text="$1" ; la fenêtre est vide.
Je vais approfondir cette piste
Dernière modification par Ras' (Le 08/05/2008, à 07:19)
Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
Les types awesome n'ont rien à prouver. À personne.
'k bye là
Hors ligne
#39 Le 08/05/2008, à 07:33
- Ras'
Re : Envoyer une image vers uppix.net en 2 clics
On avance !
Donc en fait le script marche très bien, mais pas avec une image sur le bureau...
C'est assez embêtant puisque quand on fait une capture c'est sur le bureau, et c'est plus facile pour la trouver...
Par contre je sais pas du tout pourquoi vu qu'en ligne de commande, avec un fichier sur le bureau, ça marche...
En passant ce serait vachement bien qu'au lieu de nous dire 'erreur le fichier est trop lourd' ; il le convertisse tout seul
Parce que les photos de mon appareil en 5MPixel sont toutes trop lourdes, donc...
Je regarde ça
EDIT : Bon en fait j'ai modifié ton script à ma sauce pour qu'il convertisse l'image dès le début, comme ça aucun problème de taille trop grande. Et puis l'upload va plus vite comme ça. De toute façon j'utilise pas pix.nofrag pour héberger mes galeries d'art ^^
Pour ce que ça interesse, au début j'ai rajouté :
convert $1 -quality 70 ".tiny_$1"
FICHIER=".tiny_$1"
et changé : MIMETYPE=$(file -bi "$1") en MIMETYPE=$(file -bi "$FICHIER")
(d'ailleurs tu défini la variable fichier juste au dessus et tu te sert de $1 ensuite ^^)
et à la fin j'ai rajouté :
# On supprime le fichier temporaire
rm -f $FICHIER
Voila
Dernière modification par Ras' (Le 08/05/2008, à 07:47)
Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
Les types awesome n'ont rien à prouver. À personne.
'k bye là
Hors ligne
#40 Le 08/05/2008, à 15:05
- wrm1862
Re : Envoyer une image vers uppix.net en 2 clics
Merci pour ce script trés utile que je viens de découvrir et qui fonctionne à merveille
Hors ligne
#41 Le 08/05/2008, à 17:06
- matoo
Re : Envoyer une image vers uppix.net en 2 clics
Super ce script merci!
Comme Ras' celui avec imagesshack.us ne fonctionnait pas (ou plus).
Par contre 2 petites choses:
* J'ai bien ajouté
# On met le lien direct dans le presse papier
echo $IMAGE_BIG|xclip
à la fin du script, mais le clic mollette ne m'enregistre rien de particulier... (j'effectue le script via clic-droit>>Scripts>>Pix et non en Terminal)
Faut-il désactiver la fenêtre indiquant les liens?
* Je suis une grosse feignasse, lorsque je doublie-clic sur le lien voulu de la fenêtre indiquant les liens, le curseur ne me sélectionne pas le liens entièrement comme il faut....
Y a t'il un moyen pour remédier à cela?
Au passage si vous avez un script permettant la conversion d'un (ou mieux de tout un dossier) en wma (je sais saymal) vers mp3, je suis carrément preneur... EDIT: trouvé cf http://doc.ubuntu-fr.org/tutoriel/mp3_ogg
J'espère avoir été clair.
A bientôt;)
Dernière modification par matoo (Le 08/05/2008, à 17:40)
Hors ligne
#42 Le 08/05/2008, à 22:12
- pmd
Re : Envoyer une image vers uppix.net en 2 clics
@matoo : perso, j'ai jamais réussi à me servir de xclip, c'est pour ça que ce n'est pas moi qui ai proposé la solution dans ce topic (d'ailleurs, cette solution ne marche pas, mais c'est pas grave ça ne m'intéresse plus).
Pour le double clic, je ne sais pas, mais si jamais tu trouve : COPAIN !
@Ras' : En effet, c'est un script pour uploader, par pour redimensionner puis uploader. Je préfère donc pas mettre dans le script cette fonctionnalité afin de laisser quelque chose de simple.
et changé : MIMETYPE=$(file -bi "$1") en MIMETYPE=$(file -bi "$FICHIER")
(d'ailleurs tu défini la variable fichier juste au dessus et tu te sert de $1 ensuite ^^)
Tiens, oui. Je corrige ça
Sinon, finalement ça marche pour toutes tes images l'upload, y compris sur le bureau ?
Dernière modification par pmd (Le 08/05/2008, à 22:13)
Hors ligne
#43 Le 09/05/2008, à 01:55
- Laurent82
Re : Envoyer une image vers uppix.net en 2 clics
Donc en fait le script marche très bien, mais pas avec une image sur le bureau...
C'est assez embêtant puisque quand on fait une capture c'est sur le bureau, et c'est plus facile pour la trouver...Par contre je sais pas du tout pourquoi vu qu'en ligne de commande, avec un fichier sur le bureau, ça marche...
Normal, mais c'est un problème spécifique à Gnome/Nautilus. Nous n'avons pas ce problème sous XFCE (KDE je n'ai pas essayé).
Pour les nautilus-scripts, il vaut mieux utiliser les variables du type : $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
Mais bon, du coup ça n'en fait plus "que" des nautilus-scripts...
#44 Le 09/05/2008, à 06:04
- Ras'
Re : Envoyer une image vers uppix.net en 2 clics
Bizzare, xclip marchait très bien chez moi sous gutsy et ne marche plus maintenant :\
Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
Les types awesome n'ont rien à prouver. À personne.
'k bye là
Hors ligne
#45 Le 25/05/2008, à 11:32
- matoo
Re : Envoyer une image vers uppix.net en 2 clics
Bonjour,
2 problèmes depuis le passage à Hardy :
1/ marche pas sur le bureau
2/ l'image disparaît mystérieusement à la fin du script
Hors ligne
#46 Le 12/08/2008, à 23:54
- soupaloignon
Re : Envoyer une image vers uppix.net en 2 clics
Cela ne serait pas lié à ca ?
http://forum.ubuntu-fr.org/viewtopic.php?pid=1995499
==> Libérez les huitres du bassin d'Arcachon <==
Hors ligne
#47 Le 02/02/2009, à 15:03
- pmd
Re : Envoyer une image vers uppix.net en 2 clics
Mise à jour du script. pix.nofrag.com est mort donc je passe à uppix.net
Hors ligne
#48 Le 03/02/2009, à 21:25
- brizou
Re : Envoyer une image vers uppix.net en 2 clics
petite question j'ai un compte sur uppix, ce qui fait que quand je vais sur la page mypix j'ai toute les images que j'ai uploadé, le script peut-il ainsi ajouter les images que j'uploaderais avec ce script (via nautilus script qui est bien pratique) à mypix
Hors ligne
#49 Le 04/02/2009, à 13:23
- pmd
Re : Envoyer une image vers uppix.net en 2 clics
Je vais me faire un compte, et me pencher sur le problème
J'avais jamais pensé à m'ouvrir un compte, mais ça peut être stylé de retrouver ce qu'on a envoyé
Hors ligne
#50 Le 04/02/2009, à 17:08
- pmd
Re : Envoyer une image vers uppix.net en 2 clics
Par contre, comment puis-je m'inscrire ?
Hors ligne