Script bash de récupération d'info sur page Web
Fermé
Yoannjap
Messages postés
16
Date d'inscription
jeudi 22 septembre 2011
Statut
Membre
Dernière intervention
1 juillet 2015
-
Modifié par zipe31 le 12/06/2014 à 10:25
ellana29460 Messages postés 689 Date d'inscription lundi 7 octobre 2013 Statut Membre Dernière intervention 12 septembre 2015 - 25 févr. 2015 à 21:41
ellana29460 Messages postés 689 Date d'inscription lundi 7 octobre 2013 Statut Membre Dernière intervention 12 septembre 2015 - 25 févr. 2015 à 21:41
A voir également:
- Script bash de récupération d'info sur page Web
- Comment supprimer une page sur word - Guide
- Script vidéo youtube - Guide
- Web office - Guide
- Traduire une page web - Guide
- Info pc - Guide
3 réponses
ellana29460
Messages postés
689
Date d'inscription
lundi 7 octobre 2013
Statut
Membre
Dernière intervention
12 septembre 2015
172
14 févr. 2015 à 03:38
14 févr. 2015 à 03:38
je bosse dessus depuis déja 1h30, mais je ne lache pas le morceau. ca va m'occuper pendant mes vacances et me fera une bonne révision pour mes cours de script linux.
Flachy Joe
Messages postés
2102
Date d'inscription
jeudi 16 septembre 2004
Statut
Membre
Dernière intervention
21 novembre 2023
260
14 févr. 2015 à 12:57
14 févr. 2015 à 12:57
Salut,
voila un début de script à améliorer :
voila un début de script à améliorer :
#!/bin/bash page=$1 echo "[DEBUG] Telechargement de la page..." html=$(wget -O - $page 2>/dev/null) echo "[DEBUG] Recherche des infos..." photo_init=$(grep "Y.photo.init" <<< "$html") OLD_IFS=$IFS IFS='{' read -a array <<< "$photo_init" IFS=$OLD_IFS title=$(sed "s/.*\"title\":\"\([^\"]*\).*/\1/" <<< ${array[1]} ) path=$(sed "s/.*\"url\":\"\([^\"]*\).*/\1/" <<< ${array[1]} ) galerie=$(sed "s/\(\\/.*\)\\/.*\\//\1/" <<< $path) owner=$(sed "s/.*\"ownername\":\"\([^\"]*\).*/\1/" <<< ${array[1]} ) date=$(sed "s/.*\"date_taken\":\"\([^\"]*\).*/\1/" <<< ${array[1]} ) year=$(sed "s/\([0-9]*\).*/\1/" <<< $date ) echo "Titre : $title" echo "Auteur : $owner" echo "Galerie : $galerie" echo "Date : $date" echo "Année : $year"
ellana29460
Messages postés
689
Date d'inscription
lundi 7 octobre 2013
Statut
Membre
Dernière intervention
12 septembre 2015
172
25 févr. 2015 à 20:07
25 févr. 2015 à 20:07
je viens de finir le script, mais je ne peux pas aficher le nom de la license creative commons. je l'ai remplacé par "license cretive commons"
je l'ai testé à l'instant, il fonctionne bien
#!/bin/bash if [[ $1 != "" ]]; then if [[ $1 != "*flickr.com/*" ]]; then cd $HOME page=$1 mkdir tmp 2>/dev/null rm tmp/* 2>/dev/null echo "récupération de la page web ..." wget -P tmp $page -q cd tmp echo "[OK]" echo "extraction du titre ..." titre=`grep -e '<title>' pge | cut -d '>' -f 2 | cut -d '|' -f 1` #ok #methode alternative : titre=`grep -e '<meta name="title"' pge | cut -d '"' -f 8` echo "[OK]" echo "extraction des informations de l'auteur ..." owner=`echo $page | cut -d '/' -f 1,2,3,4,5 | tr ' ' '/'` #ok ownername=`grep -A1 -e 'photoAttributionNameClick' 4696806650 | grep -v '=' | cut -d $'\t' -f 10` #ok echo "[OK]" echo "extraction de la date de prise de vue ..." annee=`grep -e "Photo prise le" pge | cut -d '>' -f 2 | cut -d '<' -f 1 | cut -d ' ' -f 3` #ok echo "[OK]" echo "extraction des informations de copyright ..." license=`grep -n -e 'Certains droits réservés' pge | grep -n 'Certains droits réservés' | grep '1:' | cut -d '"' -f 2` #ok licensename=`license creative commons` echo "[OK]" echo "" echo "" echo "<a href=\"$1\"><i>$titre</i></a>, by <a href=\"$owner\">$ownername</a>, $annee, licensed under <a href=\"$licence\">$licencename</a>" rm * cd .. rmdir tmp fi fi exit
je l'ai testé à l'instant, il fonctionne bien
ellana29460
Messages postés
689
Date d'inscription
lundi 7 octobre 2013
Statut
Membre
Dernière intervention
12 septembre 2015
172
25 févr. 2015 à 21:41
25 févr. 2015 à 21:41
je suis un boulet, le script fonctionne, pais il ne devrai pas : pour éviter les soucis, il faut enlever les lignes n°4 et 37 (
if [[ $1 != "*flickr.com/*" ]]; thenet
fi)...