Meteoclimatic
Software => WeeWX => Otros Skins de Weewx => Mensaje iniciado por: chve en 15 de Noviembre del 2016, 20:04:41 pm
-
Nunca esta de mas tener scripts a mano. Este lo he modificado de la web de http://blackhold.nusepas.com
Para gif animado de secuencia del radar de preci del aemet. Debemos contar con los paquetes graphicsmagick y graphicsmagick-imagemagick instalados en nuestra maquina.
Crear en la carpeta del weewx un archivo radar_aemet.sh con el siguiente código:
#!/bin/bash
### CREATED BY: Blackhold
### DATE: 2014-12-12
### MODIFIED: 2016-02-07
### http://blackhold.nusepas.com
YEAR=`date +"%Y"`
MONTH=`date +"%m"`
cd /var/www/weewx/ ###AQUÍ PONER RUTA DE LA CARPETA DONDE CREASTE radar_aemet.sh
curl "http://www.aemet.es/es/eltiempo/observacion/radar?w=1&p=ba" > radar.html
IMG=(`cat radar.html |grep ${YEAR}${MONTH} |grep gif |awk '{ gsub("src=","",$0); gsub("data-\"","",$0); gsub("\"","",$0); print $3}'`)
for item in ${IMG[*]}
do
GIF=`printf "http://www.aemet.es%s\n" $item`
wget ${GIF}
done
/usr/bin/convert -delay 40 -loop 0 ./*r8va.gif ./radar.gif
rm ./*r8va.gif
rm ./radar.html
Ahora le damos permisos de ejecución al archivo desde las propiedades en modo gráfico o por consola.
jose@jose-desktop:/var/www/weewx$ chmod +x radar_aemet.sh
Seguidamente lo añadimos al cron para que se ejecute cada 10 min. Lo podemos hacer con el gnome scheduled en modo grafico o por consola.
jose@jose-desktop:~$ vi /etc/crontab
*/10 * * * * root /var/www/weewx/radar_aemet.sh
Este script crea un gif animado en tu carpeta weewx del radar de aemet pa que lo puedas añadir en la web de weewx. Para cambiar la zona geográfica hay que cambiar la terminación de la url del aemet /radar?w=1&p=ba" > ba Barcelona, va Valencia etc...
Un saludo.
-
¿Como seria para mostrar determinado contenido dependiendo la hora? Este código me genera un error de sintaxis cuando weewx genera los archivos web.
var ahora = new Date
if (ahora.getHours > 18 && ahora.getHours < 06)
else
end if
Quisiera mostrar de 6 de la tarde a 7 de la mañana el sat infrarrojo y de 7 de la mañana a 6 de la tarde el sat visible.
Un saludo.
-
Buenos días
No tengo ni idea sobre los scripts de Weewx, pero por lo pronto yo esa condicional no la haría así, sino al revés, es decir:
var ahora = new Date
if (ahora.getHours < 18 && ahora.getHours > 06)
else
end if
De lo contrario, yo creo que siempre te saltaría al else, ya que por ejemplo si "ahora.getHours" vale 20, se cumpliría sólo la primera condición, pero no la segunda.
Aún así, no creo que sea el problema, ya que no es un error sintáctico.
Saludos
-
Yo, de scripts, ni papa.....a base de google *+* *+* *+* *+*
Pero lo primero, para que alguien te pueda ayudar, es saber en que lenguaje estás programando el script
-
Probare lo que me indicas wlarues, pero como bien dices eso no genera un error de sintaxis. Sigo probando.
Jantoni el lenguaje es Javascript. http://www.w3schools.com/jsref/jsref_gethours.asp
Un saludo.
-
Hombre JavaScript es sencillico...
Con esa sintaxis te va a dar error con los if
La debes de hacer más o menos así:
var ahora = new Date().getHours(); // Se obtiene la hora actual del sistema
if (ahora < 18 && ahora > 6) {.... código a ejecutar entre llaves }
else {.... código a ejecutar con el else}
Y no hace falta poner ni end if ni nada de eso
Saludos
-
Gracias jmviper. Pues también genera error de sintaxi ;D ;D ;D
Voy a probar en un documento independiente hasta dar con el codigo exacto y luego lo probaremos en el weewx. ¿Que tipo de lenguaje utiliza weewx para los script que muestran los extras y el almanaque extendido o básico?
Un saludo
-
El script va bien, ya estoy probándolo en mi máquina, estaría bien ponerle una imagen en negro o blanco para inducir un flickeo que indique el inicio del loop, ya que si no no sabes bien donde está el final o el inicio.
Pero como al final va buscando todos los GIF que baja con la fecha y hora, no sé bien como insertárselo.
Creo que lo mejor sería modificar el comando CONVERT para añadir el nombre del GIF negro o blanco para que la linea posterior lo genere el final. Pero no lo controlo bien y me pierdo en eso.
YO mismo me autocontesto:
He creado una imagen del mismo tamaño en blanco o con un logotipo de la estación y fondo blanco y luego se modifica el comando CONVERT para añadirla al loop.
/usr/bin/convert -delay 40 -loop 0 ./*r8va.gif ./blanco.gif ./radar.gif
Y fichero creado con el loop y el blanco o lo que se quiera.
Xavi
-
apla3 apla3 apla3
No había caído yo en eso Xavi. Excelente aporte compañero, lo voy a poner en practica pero ya.
Un saludo.
-
Buenas,
He intentado añadir la imagen de radar para el skin 'Adaptativo' usando el script pero cuando doy a que corra el script me sale un error en la línea 21 diciendo esto:
./radar_aemet.sh: linea 21: /usr/bin/convert: no existe el fichero o el directorio
También he de decir que solo he podido instalar el paquete graphicsmagick, pero el otro paquete (graphicsmagick-imagemagick) no me ha dejado.
Muchas gracias de antemano.
Carlos C.
-
Hombre, te falta poner lo que pone tu linea 21.
En mi script es el borrado del fichero radar.html, pero creo que en tu fichero es el comando convert, y te dará error si no has instalado todos los paquetes previos, sobre todo si te falta el que lleva el comando convert.
/usr/bin/convert -delay 40 -loop 0 ./*r8va.gif ./radar.gif