Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#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! smile

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%% smile

Content que ça plaise wink

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 :

pmd a écrit :

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.jpg



Les 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 question

mkdir .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="&lt;lien url=\"$VIEWPAGE\"&gt;&lt;image&gt;$IMAGE_MINI&lt;/image&gt;&lt;/lien&gt;"
#    ="<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 attend smile


Sous 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 ...) big_smile

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

pmd a écrit :

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::lol:

PS : si t'es un mauvais, une explication soit disant plus claire par Raskal.

wink 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&#039;

Re : Envoyer une image vers uppix.net en 2 clics

pmd a écrit :

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 neutral

Hors ligne

#33 Le 11/02/2008, à 16:37

Ras&#039;

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 wink
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

smile

( Merci encore à  bling_bling de m'avoir aidé à  trouver la solution wink et à  LeGreffi3r de s'y être penché wink )

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 big_smile

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&#039;

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&#039;

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 wink

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 wink

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&#039;

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 wink
Parce que les photos de mon appareil en 5MPixel sont toutes trop lourdes, donc...
Je regarde ça wink



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 smile

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 tongue

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.

Ras' a écrit :

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 smile

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

Ras' a écrit :

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&#039;

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 smile

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 smile
J'avais jamais pensé à m'ouvrir un compte, mais ça peut être stylé de retrouver ce qu'on a envoyé smile

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