Introducción
Llevo algunas semanas trabajando en al nueva versión de Picapy, la nueva versión del gestor de imágenes para Picasa Web. El objetivo de esta nueva revisión pasaba por dejar de lado «gdata», para acceder a mas características (aunque no me ha dado tiempo de implementarlas todas), y poder modificar imágenes subidas a Picasa, migrar el código a Python3, y poder mostrar la presentación preliminar de los álbum. Lo cierto, es que se me ha complicado algo, pero el objetivo está cumplido:
Picapy 2.0.0.0
Las nuevas características implementadas
De entre los cambios introducidos en esta nueva versión de Picapy, quiero destacar los siguientes:
- Uso de OAuth2 para conectarse a Picasa Web. De esta forma no guardamos ninguna contraseña en el equipo, y el desarrollador, tampoco tiene acceso a la misma, con lo que aumentamos la seguridad. Esto conlleva el acceso mediante las sigientnes ventanas de diálogo
Una vez introducida la contraseña, tenemos que dar permiso a Picapy para que gestione nuestros álbumes.
- Es posible desvincular Picapy de una cuanta desde la ventana de preferencias:
- Ahora la pantalla principal, donde vemos todos los álbumes, nos muestra una presentación preliminar del contenido de cada uno de ellos (la imagen que se haya seleccionado como principal), con un pequeño símbolo que nos indica el tipo de visibilidad del álbum (privado, público o restringido). La primera vez que se ejecuta Picapy, tardará algo mas de lo normal en iniciarse, porque creará la imagen preliminar de cada uno de ellas, posteriormente es mucho más rápido, dado que solo actualiza las modificadas.
- Se ha añadido también un símbolo a cada imagen para conocer la visibilidad de la misma, al igual que para las álbumes
- En la ventana de modificación de las imágenes accesible desde el menú contextual, se puede cambiar la imagen a la que hace referencia. Esto es una utilidad que venía persiguiendo desde hace tiempo, porque permite sin tener que cambiar los enlaces, sustituir una imagen. Como he coemntado en alguna ocasión, la mayor parte de las imágenes de este sitio están en Picasa. De esta manera, solo tengo que cambiar la imagen porque el enlace permanece. Pra realizar el cambio, solo tenemos que pulsar el botón que nos permitirá seleccionar otra imagen:
- Velocidades de subida y bajada. He intentado mejorar las velocidades de acceso a los álbumes e imágenes, pero no estoy seguro de haberlo conseguido. Desde mi punto de vista si, pero no tengo claro hasta que punto influye mi máquina, de forma que cualquier comentario al respecto es bienvenido, para ver si es necesario modificar el algoritmo. He utilizado un sistema multihilo que sube o baja varias imágenes de forma simultánea
- He modificado el icono de la aplicación, para que se viera mejor, sin embargo, el resultado no me termina de convencer, así que si alguién con mas gusto que yo, se ofrece a crear el icono definitivo, será bienvenido.
Instalación
Para instalar Picapy en tu equipo, tienes que añadir el siguiente repositorio, actualizar e instalar:
sudo add-apt-repository ppa:atareao/atareao && sudo apt-get update && sudo apt-get install picapy
Conclusiones
Sobre todo el desarrollo de una interfaz para relacionarme directamente con la API de Picasa Web es lo que me ha llevado mas tiempo, así como algún contratiempo con Python3, unicode, y esas cosas del querer. Sin embargo, esto da pie a nuevas mejoras en futuras versiones, dado que tengo al alcance de la mano la API (mas bien al alcance del teclado). Esto ha llevado directamente en esta versión a la posibilidad de modificar imágenes sin cambiar el enlace). Quería haber incluido también la posibilidad de añadir alguna herramienta para modificar las imágenes directamente, pero finalmente lo he dejado para otras versiones posteriores.
Una de las ventajas de trabajar en diferentes proyectos de forma simultánea, es que voy aprovechando el código de uno en otro, o lo que aprendo para hacer una determinada aplicación en otra. Así la posibilidad de mostrar un pequeño icono en cada álbum o imagen es fruto del trabajo desarrollado para uPdf.