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.

#1 Le 08/02/2011, à 18:26

Kookaburra

[Script] Screenshot + Upload Web (format "miniature cliquable")

Tout est dans le titre !

J'en ai rêvé, je ne savais pas le faire (halala le bash roll) et je ne trouvais rien faisant exactement ce que je voulais ...
Donc j'ai pris mon courage à deux mains et je me suis plongé dans tout ce que j'ai pu trouvé sur le Net pour m'aider à réaliser ce scritp.

Non sans mal, j'ai fait un script bash qui réalise ce que je veux : faire un screenshot, le télécharger sur le net et me renvoyer (dans un terminal) le résultat sous forme de lien à "copier/coller" vers une miniature cliquable !


Dans le terminal, ça donne ça :

┌─(kooka@EeeGeek)────────────────────────────────────────────────────────────────────────────(07-02-11)─┐
└─(/home/kooka)──> %  kooka-screenshot                                                     ──(21:39:24)─┘

Screenshot dans 5 secondes ...
... Screenshot effectué !
... Miniature générée !

Upload de l'image vers IMGUR ...
######################################################################## 100,0%
Upload de la miniature ...
######################################################################## 100,0%

Voici les liens :

Screenshot :
http://i.imgur.com/ks3PC.png

Miniature cliquable :
[url=http://i.imgur.com/QVdIi.png][img]http://i.imgur.com/ks3PC.png[/img][/url]

(lien envoyé dans le Clipboard, à coller où vous voulez !)

Les miniatures ont cette taille là :

ks3PC.png


Et voici le code :
(attention, c'est surement "crado" pour les puristes du Bash, tout conseil pour améliorer ce script est le bienvenu ! smile )

#!/bin/bash
#

#    Kooka-Screenshot
#     By Kookaburra ( kookaburra45 0 gmail . com )
#     Based on differents scripts view on the Internet
#     Thanks to all of the authors :-)
#
#     Links :
#    http://www.webupd8.org/2010/01/scripts-to-take-screenshot-and-upload.html
#    http://sirupsen.com/a-simple-imgur-bash-screenshot-utility/
#    http://forum.ubuntu-fr.org/viewtopic.php?id=183632&p=1
#    
#     Description: Very simple script to take a screenshot and upload it to http://imgur.com/. 
#    The URL of a "clickable thumbnail" will then be injected into your clipboard.
#
#     Dependencies: scrot xclip libnotify* notify-send curl imagemagick
#
#     Installation:
#    Move the file to a local bin. And put the path of this bin, into your path.
#     From then on, you can either activate it via your terminal, or via
#     your window manager or similar, so you can bind it to a keycombination.
#
#    Version 1.1
#    08/02/2011
#

###################### Paramètres à définir ######################
# Dossier de sauvegarde :
DOSSIER="/path/to/your/screenshots/folder"
# Délai de prise du screenshot :
DELAI=5
# Dimensions de la miniature :
LARGEUR=640
# (la hauteur sera calculé automatiquement)
##################################################################

function uploadImage {
  curl --progress-bar -F "image=@$1" -F "key=486690f872c678126a2c09a9e196ce1b" http://imgur.com/api/upload.xml | grep -E -o "<original_image>(.)*</original_image>" | grep -E -o "http://i.imgur.com/[^<]*"
}

echo "Screenshot dans $DELAI secondes ..."
cd $DOSSIER
scrot -d $DELAI '%Y-%m-%d--%s_$wx$h_scrot.png'
cd ~/
scrot shot.png
echo "... Screenshot effectué !"
convert shot.png -thumbnail ${LARGEUR}x -unsharp 0x.5 shot-thumb.png
echo "... Miniature générée !"
echo ""
echo "Upload de l'image vers IMGUR ..."

uploadImage "shot.png" | xclip -selection c
IMAGE1=$(xclip -selection c -o)
rm "shot.png"
echo "Upload de la miniature ..."
uploadImage "shot-thumb.png" | xclip -selection c
IMAGE2=$(xclip -selection c -o)
rm "shot-thumb.png"

echo ""
echo "Voici les liens :"
echo ""
echo "Screenshot :" 
echo "$IMAGE1"
echo ""
echo "Miniature cliquable :"
echo "[url=$IMAGE1][img]$IMAGE2[/img][/url]" | xclip -selection clipboard
echo "(lien envoyé dans le Clipboard, à coller où vous voulez !)"
notify-send "Done"

Dans le détail :
- retour d'informations en cours d'exécution de script + ProgressBar du téléchargement dans Curl.
- la miniature a une largeur fixe (640pixels par défaut) et la hauteur est auto-calculée en fonction de la largeur.
- il y a zone pour rentrer les paramètres que l'on veut (délai, largeur de la miniature et dossier de destination de la sauvergarde sur le DD).
- le lien final est automatiquement envoyé dans le presse-papier, il n'y a plus qu'à faire un "coller" et c'est bon.

Quelques explications :
- Ca upload vers "imgur" et non "pix-libre" (j'aurai préféré) car je n'ai pas réussi à le faire ... (je n'ai pas trouvé la méthode pour y arriver)
- attention : ça fait une copie "pour mémoire" vers un dossier de sauvegarde de vos screenshots (/path/to/your/screenshots/folder) : à adapter à votre situation.
- J'ai mis un délai de 5 secondes, à vous de modifier ça pour le mettre à votre goût (pas de délai, délai plus long, ...)
- L'exécution complète du script est longue : c'est normal, il faut le temps que ça upload ! Patience : à comparer au temps que l'on met d'habitude à faire l'ensemble des actions correspondantes ... big_smile )

- Y'a des dépendances, voir dans le script.
- Le mieux est de mettre ce script dans "~/bin/" pour le lancer facilement depuis un terminal ou depuis un raccourci clavier ...

wink


Portable17p : CrunchBangLinux // EeePC : ArchLinux
Openbox Addict : http://kookadimi.deviantart.com
Mes photos : http://www.fluidr.com/photos/kookadimi/sets
Votre téléphone mobile dispose de plus de puissance que l'ensemble des ordinateurs de la NASA en 1969. La NASA a lancé un homme sur la Lune. Vous lancez un oiseau sur des cochons...

Hors ligne

#2 Le 10/02/2011, à 14:33

Kookaburra

Re : [Script] Screenshot + Upload Web (format "miniature cliquable")

Nouvelle version en cours de tests : plus d'effets (Shadows, Mini-Polaroid, ... et à venir : effet "miroir"), plus de retours d'infos (tous les retours se passent dans le terminal et dans "notify-send"), ... Bref, ça avance wink

         LQO6O.png

         30IEw.png

ytcpq.png 2G2ZM.png

smile


Portable17p : CrunchBangLinux // EeePC : ArchLinux
Openbox Addict : http://kookadimi.deviantart.com
Mes photos : http://www.fluidr.com/photos/kookadimi/sets
Votre téléphone mobile dispose de plus de puissance que l'ensemble des ordinateurs de la NASA en 1969. La NASA a lancé un homme sur la Lune. Vous lancez un oiseau sur des cochons...

Hors ligne