#1 Le 04/09/2010, à 11:13
- Nécropotame
Script pour la bibliothèque municipal de Lyon
Bonjour !
J'ai fait un petit script pour récupérer la liste des livres emprunté à la bibliothèque municipal de Lyon.
Pour le moment, il peut télécharger les donnée (avec une bar de progression via zenity) et afficher dans un tableau (toujours zenity) les données
J'ai juste un bug : je n'ai pas trouvé de solution pour que zenity d'interprète pas les espaces, donc je les ait provisoirement remplacé par des _. Le résultat n'est donc pas forcement magnifique ^^ Si quelqu'un à une solution
Images :
http://ubuntuone.com/p/EsE/
http://ubuntuone.com/p/EsF/
#!/bin/bash
LOGIN_NO=$1
LOGIN_PASSWORD=$2
POST_DATA="No=""$LOGIN_NO""&Password=""$LOGIN_PASSWORD""&LIFE_CYCLE=0"
URL="http://sbibbh.si.bm-lyon.fr:4619/pservices/fr/gra/relogon.jsp"
OUTPUT="bm-lyon.tmp"
wget -O "$OUTPUT" --post-data="$POST_DATA" "$URL" | \
sed -u 's/.*\ \([0-9]\+%\)\ \+\([0-9.]\+\ [KMB\/s]\+\)$/\1\n# Downloading \2/' | \
zenity --progress --auto-close --title "Livres empruntés" --text "Téléchargement en cours"
ZENITY_DATA=$(cat "$OUTPUT" | iconv -f ISO-8859-1 -t UTF-8 | sed 's/\x0D//' | \
grep '<th width=17% nowrap>Emprunt</th>' | \
sed -r -e 's#<br># #g' | \
sed -r -e 's# #_#g' | \
sed -r -e 's#^(.*)</th></tr>[^f]*<font>##' | \
sed -r -e 's#</font>[^f]*</table>##' | \
sed -r -e 's#</font>[^f]*</tr><tr>[^f]*<font># #g' | \
sed -r -e 's#</font>[^f]*<font># #g' | \
sed -r -e 's#<b>Emprunté_à:_([^<]*)</b># \1 #g' )
zenity --width 600 --height 450 \
--list --text "Livres empruntés" \
--column "#" \
--column "Titre" \
--column "Lieu" \
--column "No" \
--column "Emprunt" \
--column "Retour" \
$ZENITY_DATA
A terme, j'ajouterai un peu plus d'informations et de manière plus présentable ^^
Hors ligne
#2 Le 04/09/2010, à 11:19
- Hedj-our
Re : Script pour la bibliothèque municipal de Lyon
L'espace ne s'écrit il pas %20 ou quelque chose du genre ?
Re-nouveau sous nux mais libre depuis un moment:-)
Re-Passé sous l'O-S du Grand MAL longtemps mais quitté pour le lynx
Ils domineront le monde... (faute de pouvoir placer l'image voici le lien)
Hors ligne
#3 Le 04/09/2010, à 11:33
- Nécropotame
Re : Script pour la bibliothèque municipal de Lyon
C'est à dire ? Dans je ne le remplace pas par un underscore ? Si je ne le fait pas, comme zenity considère l'espace comme un séparateur, je me retrouve avec un mot par cellule et un paquet de ligne dans le tableau.
J'ai essayé avec sed de remplacer les espace par \ suivit de l'espace, mais ça ne fait qu'ajouter le \ à la fin de chaque mot.
Hors ligne