Después de los distintos bugs aportados por Andrew, y otros, tenía en mente reescribir por completo el código de my-weather-indicator, pero hasta ahora no había encontrado tiempo. Pero no podía dejar de pasar ni un día mas para arreglarlo.
Finalmente decidí, a la vista de todos los errores, cambiar el API de The Weather Channel por el de Google. La ventaja es clara, la aplicación va rápida como ella sola, no da ningún tipo de error, y el resultado final lo agradece. Como contrapartida, tienes que ha desaparecido mucha de la información que disponíamos antes.
Esto es lo que mas me paraba a la hora de recurrir a la API de Google, pero, definitivamente, ¿para qué tanta información? si finalmente solo queremos saber si va a llover/nevar, la temperatura máxima y mínima, y la humedad, y en ocasiones ni eso.
Así, pues finalmente me decanté por lo sencillo. Para utilizar la API de Google, he partido del código fuente de python-weather-api implementado por Eugene Kaznacheev, lo que me ha simplificado considerablemente las cosas.
La notificación aparece tal y como se ve en la siguiente imagen:
Instalación, configuración, y pruebas:
Instalación
Para instalar my-weather-indicator tienes varias opciones como siempre. Si no has añadido el repositorio del atareao, lo añades, para ello:
sudo add-apt-repository ppa:atareao/atareao
En cualquier caso, lo tengas o no lo tengas, tienes que actualizar:
sudo apt-get update
Una vez realizados los primeros pasos, lo siguiente instalar, o haciendo click en my-weather-indicator, o a través del terminal:
sudo apt-get install my-weather-indicator
Configuración
Lo primero que tienes que hacer es añadirlo a aplicaciones al inicio, para no tener que iniciar la aplicación cada vez. Para ello en aplicaciones al inicio, añades:
/usr/share/my-weather-indicator/my-weather-indicator.py
Si no siempre puedes ir al menu de Ubuntu > Accesorios, y allí te encontraras el icono de my-weather-indicator:
Una vez ya lo has iniciado, si es la primera vez, directamente te aparecerá la siguiente ventana, para que configures la localidad:
Me he pegado una pequeña machada con el tema de la temperatura, porque me habían pedido ponerla en Farenheit, pero además he añadido Kelvin, por si acaso a alguien se le ocurre.
Con esto ya tienes configurada la aplicación.
Funcionamiento
Haciendo click con el botón izquierdo del ratón sobre el icono del tiempo, te aparece un menú desplegable donde te indica las condiciones meteorológicas para la localidad seleccionada, así como la posibilidad de ver la previsión para los siguientes días. Haciendo click en esa opción te aparecerá la siguiente ventana:
Otra pequeño detalle de la aplicación, es que cada vez que cambian las condiciones meteorológicas, te muestra un mensaje a través del sistema de notificaciones de Ubuntu, indicándote las nuevas condiciones.
Cambios y modificaciones respecto a la versión anterior
Como he comentado, he reescrito por completo la aplicación para solucionar todos los problemas existentes, y a pesar de la merma de información el resultado creo que vale la pena.
Por otro lado he añadido soporte para Alemán, Francés, Italiano y Gallego, aunque las traducciones no están muy allá.
Ya está el proyecto en Launchpad, en su correspondiente dirección: my-weather-indicator. Falta subir el código fuente, y demás cosillas, que espero hacer en breve.
gracias atareao, te ayudaré en Launchpad con la traducción al gallego 😉
Muy buena aplicación, he hecho algunas correcciones al español 😉
Saludos.
necesito ayuda lo instale pero no me deja configurarlo algo ise mal
Lorenzo, antes que nada quiero agradecer tus artículos así como las aplicaciones que publicas constantemente. Tanto los unos como las otras me han resultado de gran utilidad.
En cuanto a My-Weather-Indicator, me resulta cómodo y divertido. Sin embargo, quiero hacer un comentario, en mi sistema (Ubuntu 10.04.2, usando Elegant Theme), el icono de la aplicación no se muestra en el panel de GNOME. No entiendo que ocurre. Si necesitas más información para auxiliarme, estoy presto a brindarla.
Saludos desde Venezuela, y nuevamente, ¡gracias!
Casi lo olvido, ¿podría yo, manualmente, ampliar la lista de ciudades disponibles? Aparecen pueblos (como el mío) Guanare o Calabozo, pero no aparecen ciudades mucho más importantes como Maracay o Porlamar. Si eso puede hacerse, avísame que con gusto amplío la lista con algunas ciudades y pueblos de Venezuela 🙂
Gracias a tus comentarios, me acabo de dar cuenta que no he actualizado la última versión a Lucid ni a Natty, por esta razón tienes problemas con los iconos.
Actualiza My-Weather-Indicator, la version tiene que ser la 0.3.1, y me cuentas.
Con esto te quedarán resueltos tus dos comentarios, por que como verás la forma de introducir la localización es nueva, y permite muchas posibilidades.
Pruébalo y me cuentas
No hay nada que agradecer Lorenzo, los aportes que haces a la comunidad si son motivo para agradecimientos.
Ahora vamos al asunto, a eso de las 10 de la mañana (hora de Venezuela), My-Weather-Indicator apareció dentro de la lista de aplicaciones a ser actualizadas por el Gestor de Actualizaciones de Ubuntu. De inmediato procedí a aceptar esa y otras actualizaciones, pero asuntos de trabajo me impidieron revisar la nueva versión (0.3.1).
Hace unos minutos revisé mi correo, vi tu mensaje y procedí a hacer una revisión del Indicador en cuestión. Mis observaciones son las siguientes:
– El indicador sigue sin mostrar el ícono en el panel de GNOME.
– Efectivamente la nueva pantalla de captura es mucho más práctica y pude ubicar la localidad que me interesaba, además hice algunas pruebas con otras localidades.
– En cuanto al punto anterior, hay un problema, el cual no es responsabilidad tuya, sino del servicio de donde se extrae la información de geolocalización. La ciudad con la que hice la prueba (Maracay, Venezuela) indicaba que el cielo estaba nublado, lo cual era incorrecto. Busqué en la Web y las coordenadas de la ciudad son estas: 10°15′06″N 67°36′05″O (10.251667°, -67.601389° decimal), siendo el caso de que My-Weather-Indicator la ubica en estas coordenadas: 10.2469444 N -67.5961111 O, habiendo una diferencia de unos pocos minutos y segundos entre ambas, lo cual da como resultado que la ubicación no se corresponde con la ciudad en cuestión sino con una localidad cercana. Hice la prueba con la ciudad de Guanare, cuyas coordenadas son 9º02’37” N 68º44’56” O (9.043611, -68.748889 decimal) y ocurre el mismo problema. Por eso me imagino que tiene que ver con el servicio de geoposicionamiento de donde extraes la información.
– En cuanto a las coordenadas, estas aparecen en un formato decimal, pienso que deberías permitir introducirlas según el Sistema Geodésico Mundial (GG HH MM SS) y que el Indicador haga la conversión internamente o mejor todavía, que el usuario pueda introducir los valores como prefiera: WGS84, Decimal y hasta UTM.
Como sea, sólo puedo volver a gradecer el esfuerzo que haces y la amabilidad que has tenido al responderme. No ofrezco mi ayuda, puesto que no se desarrollar en Python, algo que deseo hacer desde hace mucho pero que mi tiempo y mi flojera no me han dejado hacer. Creo que con lo que haces empiezo a ganar el impulso necesario.
Muchas gracias por tus aclaraciones. No había entrado tan en detalle. Le voy a pegar un ojo a ver que se puede hacer.
En cuanto al tema de coordenadas UTM, ya estoy trabajando en ello. Y respecto a Python, te animo a que disfrutes, para mi es uno de mis mejores entretenimientos.
Nuevamente olvidé algo, si sabes de algún libro electrónico (básico y sencillo) donde pueda yo iniciarme en el desarrollo de aplicaciones Python, te agradecería que me hicieras llegar la información.
Nuevamente, gracias. Saludos desde Venezuela >:-)
Te recomiendo que leas Python en profundidad http://es.diveintopython.org/. Pero sobre todo, que lo leas probando y equivocándote, que es como se aprende. A montar en bici se aprende montando en bici, pues con Python lo mismo.
he instalado con ppa
sudo add-apt-repository ppa:atareao/atareao && sudo apt-get update
sudo apt-get install my-weather-indicator
pero no se instaló el python-lxml, así que tuve que hacer un:
sudo apt-get install python-lxml
tiene muy buena pinta 🙂
Buenos días: En primer lugar muchas gracias por tus aportaciones. Soy lector habitual de tu blog y … procuro seguir tus consejos y filosofía. Poco peso y buenas aplicaciones.
Ahora estaba con tu programa del tiempo. Siempre me han gustado estos programas. Te cuento que he llegado a tenerlo funcionando, pero … después ya no funciona; no se lanza.
¿Como puedo lanzar el programa?.
Gracias. Saludos.
Muchas gracias a ti por seguir el blog. En cuanto al tema de my-weather-indicator, seguramente será porque te falta un módulo. Olvidé incorporar las dependencias del paquete, espero añadirlas en la próxima versión.
En principio se tratará de python-lxml: sudo apt-get install python-lxml
Si aún así no te funcionara, en un terminal tienes que ejecutar el siguiente comando:
/usr/share/my-weather-indicator/my-weather-indicator.py
escribe lo que pone de salida en el terminal y ya te digo…
Muchas gracias por compartir tu trabajo. Funciona estupendamente.
Hola Buen día se me ha presentado un problema con este indicador, no incia al inicio valga la rebundancia y me sale esto en el terminal
/usr/share/my-weather-indicator/my-weather-indicator.py: No existe el archivo o el directorio
segun esta correctamente instalado, espero tu respuesta gracias!
Me pasa lo mismo que a ti!! Por favor alguien que nos ilumine!! Gracias!!
Hola Daliana,
El archivo se encuentra en /opt/extras.ubuntu.com/my-weather-indicator/bin/my-weather-indicator
Un saludo.
Te quedó padrísimo !!! Gracias por esta app, vivo en México y me encanta el mundo de linux-Ubuntu. Felicidades por tus habilidades !!
Buenas todos, muy buen trabajo el que realizas, pero no logro que me salgo el icono en el escritorio, he instalado
python-lxml y aun nada,por favor ayudaaaa https://uploads.disquscdn.com/images/2694a79431ab9f019450b5a5abe8bc4803c1cfce2a598ebacdf56d7ed555296a.png
Hola Daliana,
¿Has configurado tu ubicación? Si es así. ¿Puedes ejecutar la app desde el terminal a ver que error arroja?
Gracias.
Me podrías decir que comando debo poner por favor¿?
/opt/extras.ubuntu.com/my-weather-indicator/bin/my-weather-indicator
System: Linux
Machine: x86_64
Node: daliana-ubuntu
Release: 4.4.0-42-generic
Version: #62-Ubuntu SMP Fri Oct 7 23:11:45 UTC 2016
Platform: Linux-4.4.0-42-generic-x86_64-with-Ubuntu-16.04-xenial
My-Weather-Indicator version: 0.9.0-0extras17.10.4
#####################################################
****** Requesting timezone identificacion
==== **** ====
Error accessing url: http://api.geonames.org/timezoneJSON?lat=0&lng=0&username=atareao 403
==== **** ====
Error requesting timezone identification:
==== **** ====
Error accessing url: http://api.timezonedb.com/v2/get-time-zone?key=02SRH5M6VFLC&format=json&by=position&lat=0&lng=0 403
==== **** ====
Error requesting timezone identification:
==== **** ====
Error accessing url: http://api.openweathermap.org/data/2.5/find?lat=0&lon=0&cnt=1&appid=4516154e5c8a6494e7e13b550408c863 403
==== **** ====
** OWM **
None 0 0
1
***** refreshing weather *****
OK. Internet connection. HTTPConnection: http://www.google.com
— Updating data in location 0 —
****** Updating weather
****** Calculating rawOffset
==== **** ====
Error accessing url: http://api.openweathermap.org/data/2.5/find?lat=0&lon=0&cnt=1&appid=4516154e5c8a6494e7e13b550408c863 403
==== **** ====
**** None
——————————————————-
OpenWeatherMap Weather Service url:http://api.openweathermap.org/data/2.5/weather?lat=0&lon=0&appid=4516154e5c8a6494e7e13b550408c863
——————————————————-
==== **** ====
Error accessing url: http://api.openweathermap.org/data/2.5/weather?lat=0&lon=0&appid=4516154e5c8a6494e7e13b550408c863 403
==== **** ====
****** Updated weather
None
— End of updating data in location 0 —
*** Looking For Internet ***
OK. Internet connection. HTTPConnection: http://www.google.com
*** Internet Found ***
***** refreshing weather *****
OK. Internet connection. HTTPConnection: http://www.google.com
— Updating data in location 0 —
****** Updating weather
****** Calculating rawOffset
==== **** ====
Error accessing url: http://api.openweathermap.org/data/2.5/find?lat=0&lon=0&cnt=1&appid=4516154e5c8a6494e7e13b550408c863 403
==== **** ====
**** None
——————————————————-
OpenWeatherMap Weather Service url:http://api.openweathermap.org/data/2.5/weather?lat=0&lon=0&appid=4516154e5c8a6494e7e13b550408c863
——————————————————-
==== **** ====
Error accessing url: http://api.openweathermap.org/data/2.5/weather?lat=0&lon=0&appid=4516154e5c8a6494e7e13b550408c863 403
==== **** ====
Hola, ¿Estás detrás de un proxy? O tienes la configuración a internet limitada?
Creo que la segunda opción! Limitadisimaaaa!! Es por eso que no me funciona? Entonces ni modo!!! Gracias Muy buen blog, te leo siempre y sigue colaborando así!!