sábado, 3 de octubre de 2009

Baja fotos de Flickr en un "parpadeo"

Debo haber publicado ya en esta página 100.000 scripts para descargar fotos de distintas webs :p. Hoy le ha tocado el turno a Flickr, la web de Yahoo para el alojamiento gratuito de imágenes.

Objetivo

El script que os muestro a continuación tiene como nonbre dFlickr, y este es su código:


#!/bin/bash
# Adquisición de datos
function def {
      echo "$igualdades" | grep -o "$1=\"[a-z,A-Z,0-9,_]*\"" | sed 's/'$1'\=//g' | sed 's/\"//g'

}
igualdades=`gtkdialog -g if/if.glade -p interfaz`
# Leyendo datos
dire=`pwd`
L=`def L`
grupo=`def grupo`
usuario=`def usuario`
nombre=`def nombre`
exit=`def EXIT`
if [ $exit = 1 ] ; then
    # Copyright
    igualdades=`gtkdialog -g if/if.glade -p Disclaimer`
    exit=`def EXIT`
    if [ $exit = 1 ] ; then
      # Obteniendo lista
      mkdir $nombre
      cd $nombre
      {
      for i in $(seq $L) ; do
        echo "# Descargando la página $i de $L..."
        if [ $usuario = "true" ] ; then
        wget -O P$i.html http://www.flickr.com/photos/$nombre/page$i
        else
        wget -O P$i.html http://www.flickr.com/groups/$nombre/pool/page$i
        fi
        grep -o "http://farm[0-9].static.flickr.com/[[:alnum:]]*/[[:alnum:]]*_[[:alnum:]]*.jpg" P$i.html > Lista$i.txt
        grep -o "http://farm[0-9].static.flickr.com/[[:alnum:]]*/[[:alnum:]]*_[[:alnum:]]*_[[:alpha:]].jpg" P$i.html | sed 's/_[[:alpha:]]//g' >> Lista$i.txt
        wget -i Lista$i.txt
        rm P$i.html
        rm Lista$i.txt
        p=`echo "scale=2 ; $i * 100 / $L" | bc`
        echo "$p"

      done
      echo "#Borrando copias repetidas..."
      rm *.jpg.[0-9]
      } | zenity --progress --auto-close --auto-kill
      cd $dire

    fi

fi
gtkdialog -g if/if.glade -p Fin



Utilizando ese código, y con la interfaz gráfica correspondiente (todo lo cual podéis bajároslo de aquí), podréis descargaros todas las fotos que aparezcan en el mural de un grupo o asociadas a un usuario. He aquí un ejemplo de cómo funciona:



--------------------------------------

Nota del 4 de Octubre de 2009


Ha habido algunos problemas con dFlickr. Un pequeño lío de versiones ha provocado que se hayan mezclado éstas, dando un comportamiento erróneo. La nueva versión (que sobrescribe a las anteriores en los enlaces de esta entrada) debería funcionar ya bien. Entre otras cosas, se ha arreglado la anterior incompatibilidad con grupos con el caracter "@" en su "código de grupo", se han subsanado algunos problemas de resolución de las imágenes descargadas (las cuales deberían ser de 500 px en el mayor de sus lados), se ha añadido un primitivo "ETA" (tiempo estimado), útil (espero) para descargas masivas, etc.





Comparte en Facebook

2 comentarios:

  1. Esto también sirve para las ladronas de fotos, verdad? :P
    Así me es más fácil guardar las que robo, ajaja

    Por cierto, si quieres visitar Galicia, te mostraré desde dónde puedes obtener las mejores vistas de la ciudad de A Coruña, porque pienso colgarte en lo más alto de la Torre de Hércules si pretendes apropiarte de mi alma :P

    Kiss ;)

    ResponderEliminar
  2. Sí, ya sé que todo esto es con Linux, pero yo en mi Windows también tengo carpetas donde dice: Astaroth's Photos, Astaroth's Music y Astaroth's Jaulas :P

    En mi ciudad pronto habrá otra torre llamada la Torre de Jedena, y sabes en honor a qué? al día que acabé contigo! :P

    ResponderEliminar

Querido astarothista!,

Si te ha gustado la entrada y quieres dejar constancia de ello, tienes alguna sugerencia para completarla o corregirla, quieres mostrar tu opinión respecto a algo de lo que se haya hablado en esta entrada (con respeto) o simplemente quieres dejarme un mensaje a mi o a la comunidad, no dudes en comentar ;)!

Recuerda que también estamos en Facebook y en Google+.