Meteoclimatic

Software => Software de Meteoclimatic => Mensaje iniciado por: Telares en 26 de Octubre del 2022, 21:13:56 pm

Título: Orange Pi y meteoclimatic.py
Publicado por: Telares en 26 de Octubre del 2022, 21:13:56 pm
Hola, debido a los problemas que me está dando la raspi 1 con Cumulus MX ( se bloquea cada pocos días) estoy configurando una Orange Pi One. En ella Cumulus va como un tiro, genera los gráficos a toda leche, pero me he atascado con el envío a Meteoclimatic. Lo he repasado todo 20 veces pero no veo qué pasa.
CMX genera la plantilla perfectamente, el problema lo tengo con el script de envío. Estando en la misma ruta doy permisos...

root@Matueca:~# cd /home/pi/meteoclimatic
root@Matueca:/home/pi/meteoclimatic# chmod u+x meteoclimatic.py
root@Matueca:/home/pi/meteoclimatic# ./meteoclimatic.py
-bash: ./meteoclimatic.py: cannot execute: required file not found

Gracias
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 07:24:41 am
Buenas

Repasa la ruta de la plantilla que tienes en meteoclimatic.ini, tiene que ser absoluta (empezando con / en la raíz de la opi).

Si pones en el terminal cat /rutadelaplantilla/meteoclimatic.htm deberías poder ver el contenido y ser esa la ruta a poner. He puesto en el ejemplo meteoclimatic.htm pero también puede ser meteoclimatic.html terminada en ele si así está configurada en ser creada por MX.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 08:09:23 am
Hola, en .ini está bien:
Path=/home/pi/CumulusMX/webfiles/meteoclimatic.html
y con el comando cat se ve el contenido de la plantilla pero sigue sin ejecutarse el script...
¿Alguna otra idea o empiezo de cero grabando de nuevo la imagen en la sd?
Gracias.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 08:34:19 am
Tienes python instalado ??

which python

Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 08:46:10 am
Ayer hice ésto y llegué a la conclusión de que sí está peeero...como repito comandos como un mono pues no sé:
root@Matueca:~# python3
Python 3.10.8 (main, Oct 24 2022, 10:07:16) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 09:13:01 am
¿Puede que tenga que ver con el formato de fecha, locale...?:

root@Matueca:~# python3 /home/pi/meteoclimatic/meteoclimatic.py
Traceback (most recent call last):
  File "/home/pi/meteoclimatic/meteoclimatic.py", line 189, in <module>
    fechaformat = time.mktime(time.strptime(fecha, '%d-%m-' + anho + ' %H:%M'))
  File "/usr/lib/python3.10/_strptime.py", line 562, in _strptime_time
    tt = _strptime(data_string, format)[0]
  File "/usr/lib/python3.10/_strptime.py", line 349, in _strptime
    raise ValueError("time data %r does not match format %r" %
ValueError: time data '10-27-2022 07:11' does not match format '%d-%m-%Y %H:%M'
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 09:42:57 am
Ok por partes

No tienes /usr/bin/python el cual es la ruta al ejecutable de python. Esa línea es con la que se llama a python al inicio del archivo meteoclimatic.py

Puedes hacer dos cosas. Editar meteoclimatic.py y poner la línea al inicio de #!/usr/bin/python como #!/usr/bin/python3 para que apunte a python versión 3 o crear un enlace simbólico a /usr/bin/python3

cd /usr/bin
ln -s python3 python

Ejecutando esos dos comandos se creará ese enlace simbólico con el que escribir python apuntará a python3 que es el que verdaderamente ejecuta.

En cuanto a lo de la fecha sí, es por el formato del locale. Pon el locale en español:

dpkg-reconfigure locales

Seleccionando el español es_ES.UTF-8 y poniéndolo como defecto en el sistema.

Lo podrás ver ejecutando el comando locale en el terminal.



Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 09:50:46 am
Hecho lo del .py
En cuanto al locale en la raspi siempre he tenido en_GB.UTF-8 UTF-8
En armbian-config, al contrario que en raspi-config no queda marcado con asterisco el locale elegido : también en_GB.UTF-8 UTF-8 y al ejecutar locale:

root@Matueca:~# locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

y sigue sin ejecutarse el .py
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 10:00:47 am
Pon resultado de ejecutar

ls -l /usr/bin/python*

En cuanto a los locales selecciona el locale español con la barra espaciadora. Debería de generarse y en la opción correspondiente ponerlo por defecto.



Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 10:06:33 am
root@Matueca:~# ls -l /usr/bin/python*
lrwxrwxrwx 1 root root      10 Aug 11 12:57 /usr/bin/python3 -> python3.10
-rwxr-xr-x 1 root root     963 Apr 23  2022 /usr/bin/python3-commonmark
-rwxr-xr-x 1 root root 4067736 Oct 24 10:07 /usr/bin/python3.10
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 10:10:10 am
apt-get purge locales
apt-get install locales
dpkg-reconfigure locales:  es_ES.UTF-8 UTF-8
reboot
locale:

root@Matueca:~# locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 10:45:16 am
A ver qué locales tienes disponibles:

locale -a

En cuanto a python:

ln -s /usr/bin/python3 /usr/bin/python

Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 10:47:30 am
root@Matueca:~# locale -a
C
C.utf8
POSIX

Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 11:16:36 am
Esta imagen es de un tuturial. A mí no me sale en la Opione, sí en la raspi.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 12:22:50 pm
Está debconf instalado ?? Es el que lleva dpkg-reconfigure si no me equivoco

apt list debconf

Si no está instálalo y ya lo deberías de poder configurarlo.

También puede instalar armbian-config que es el equivalente a raspi-config para el SO armbian

Qué imagen de armbian has instalado ?? debe ser de la minimal
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 12:25:45 pm
root@Matueca:~# apt list debconf
Listing... Done
debconf/unstable,now 1.5.79 all [installed]
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 12:26:35 pm
Armbian_22.08.2_Orangepione_sid_edge_5.19.10.img
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 12:28:02 pm
Cuando entro en armbian-config me deja elegir idioma pero luego no lo guarda
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 14:52:04 pm
No instales nunca la versión sid.

sid es el niño malo de Toy Story (los nombres de las versiones de debian están basados en los distintos personajes). Era el que hacía mil perrerías a los juguetes y por eso le pusieron ese nombre a las versiones de pruebas de debian.

Solo si sabes de Linux, eres desarrollador y sabes lo que tocas puedes probar con sid.

Instala bullseye que es la última versión y más estable o la también disponible Jammy basada en Ubuntu

Culpa no tienes ninguna, porque no lo sabías, pero no está de más informarse sobre la imagen que se instala.

Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 14:54:46 pm
Descartando la que tiene escritorio, sid es la única que pude instalar, las otras dos no arrancaban la Opione con dos sd diferentes...
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 15:35:12 pm
Cosa más rara...

Yo tengo la Orange Pi PC y todas las que me he instalado han ido a la primera.

Sería cuestión de ver imágenes anteriores:

https://armbian.systemonachip.net/archive/orangepione/archive/

Al final están las más recientes, tanto de bullseye (debian) como de jammy (Ubuntu)

Prohibido tocar sid  *+* *+*

A ver si es que no se graban bien.... usas win32diskimager (https://sourceforge.net/projects/win32diskimager/) ?? Ese es con el que las grabo siempre.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 15:41:24 pm
Sí, win32 diskimager.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 20:01:22 pm
He conseguido instalar "Armbian_22.08.2_Orangepione_bullseye_current_5.15.69.img" y todo ha ido bien hasta llegar al .py. Lo edité y añadí el 3 de python. Nada, que la fecha, los locale, que no y no y no.
No me deja y/o no soy capaz de poner el español. Repito que en la raspi tengo el inglés de GB y no ha dado este problema.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 20:48:09 pm
Bueno, buscando, buscando encontré por internet que editando /etc/locale.gen y descomentando la línea del es_ES.UTF-8 UTF-8 se podía generar el español. Luego entré en armbian-config y ya sí me deja escoger el español como predeterminado.
Ahora el esquivo ./meteoclimatic.py ya funciona.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 20:51:07 pm
Pero te pone el menú de elección dpkg-reconfigure locales seleccionas español UTF-8 y lo pones por defecto del sistema y después reinicias ??

Sale algún error ? Te siguen saliendo los locales con POSIX ??

Esto sale en la mía:

root@orangepipc:~# locale
LANG=es_ES.UTF-8
LANGUAGE=
LC_CTYPE="es_ES.UTF-8"
LC_NUMERIC="es_ES.UTF-8"
LC_TIME="es_ES.UTF-8"
LC_COLLATE="es_ES.UTF-8"
LC_MONETARY="es_ES.UTF-8"
LC_MESSAGES="es_ES.UTF-8"
LC_PAPER="es_ES.UTF-8"
LC_NAME="es_ES.UTF-8"
LC_ADDRESS="es_ES.UTF-8"
LC_TELEPHONE="es_ES.UTF-8"
LC_MEASUREMENT="es_ES.UTF-8"
LC_IDENTIFICATION="es_ES.UTF-8"
LC_ALL=es_ES.UTF-8
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 21:00:42 pm
"Pero te pone el menú de elección dpkg-reconfigure locales seleccionas español UTF-8 y lo pones por defecto del sistema y después reinicias ??"
 Ahora sí

Y esto en la mía:

root@orangepione:~# locale
LANG=es_ES.UTF-8
LANGUAGE=
LC_CTYPE="es_ES.UTF-8"
LC_NUMERIC="es_ES.UTF-8"
LC_TIME="es_ES.UTF-8"
LC_COLLATE="es_ES.UTF-8"
LC_MONETARY="es_ES.UTF-8"
LC_MESSAGES="es_ES.UTF-8"
LC_PAPER="es_ES.UTF-8"
LC_NAME="es_ES.UTF-8"
LC_ADDRESS="es_ES.UTF-8"
LC_TELEPHONE="es_ES.UTF-8"
LC_MEASUREMENT="es_ES.UTF-8"
LC_IDENTIFICATION="es_ES.UTF-8"
LC_ALL=es_ES.UTF-8
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 21:10:32 pm
O sea que ya no sale el error de fecha y puedes enviarla o sigue igual?
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 27 de Octubre del 2022, 21:27:33 pm
Sí, sí, como decía antes: ahora el esquivo ./meteoclimatic.py ya funciona. De hecho ya llevo varias actualizaciones desde la Opione. No da ningún tipo de error.
Lo que no entiendo es porqué me ha hecho lo mismo en dos imágenes de armbian diferentes..
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 27 de Octubre del 2022, 22:59:26 pm
Pues por el locale

El script no está preparado para recibir la hora en formato americano MM/DD/AA, por ejemplo 08/10/2022 sería el 10 de agosto en el americano y el 8 de octubre en el europeo, imposible de saber qué formato es. Sólo cuando el día pasase de 12 ya se podría saber, como hoy por ejemplo (10/27/2022).

Al poner el locale y la fecha en él al europeo ya está el tema solucionado.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 28 de Octubre del 2022, 08:52:31 am
Pues por el locale, pero no en español: anoche cuando empezó a funcionar el script de envío .py me di cuenta de varios fallos. Lo primero que vi fue que no me aparecía la lluvia acumulada desde que tengo CMX, agosto. Tampoco me generaba los "historic charts". Y lo que me pareció mas raro fue que me generó un archivo llamado oct22log.txt así en minúscula la "o" inicial, junto al normal con "o" mayúscula.
Después de dar muchas vueltas pensé si sería el locale en español que me recomendaste, jmviper. Volví a editar /etc/locale.gen y descomentar en este caso la línea del en_GB.UTF-8 UTF-8 para poder generar el inglés y después lo puse como por defecto. Hecho ésto al momento se solucionaron los problemas.
Efectivamente, tal y como comenté varias veces, la raspi de la que salió este CMX la tengo con el locale inglés de Gran Bretaña. Estaba así el raspbian en origen y yo nunca lo cambié. Ésto no lo podías saber tú...
Esta mañana he unido los dos logs de octubre con Notepad++ y por el momento tiene buena pinta.
Gracias.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 28 de Octubre del 2022, 10:25:25 am
Sí, tiene que ver con los locales claro... y explico:

El locale en_GB.UTF-8 es igual en el formato de fecha que el español (DD/MM/YY) y por eso meteoclimatic.py no da error, pero como acabas de comprobar genera el nombre del mes del log con mayúscula a diferencia de como lo hace el español en minúscula además de que si no me equivoco los decimales en su interior serán puntos en vez de la coma que tiene el español.

Habría que transformar unos en otros, no solo en nombres sino también en los decimales en su interior. Desconocía el locale que tenías en la raspi, pero si empezaras de 0 con el locale en español iría bien, ahora si mezclamos locales diferentes, pues como vemos va mal.

Otra cosa a tener en cuenta es el tema de como se tratan las mayúsculas y minúsculas en Windows y en Linux. En Windows si tienes un fichero llamado test.txt por ejemplo y quieres crear otro en la misma carpeta llamado Test.txt (o viceversa) te dirá que ya existe pero en Linux no, estarán los dos archivos ya que Linux diferencia mayúsculas y minúsculas pero Windows no, las trata como igualen los nombres de archivo y/o carpetas.

Con esto quiero decir que por ejemplo un CMX en Windows y en tu caso hubiera seguido generando el mismo log porque se llamaría igual, pero en tu caso al ser un locale con el nombre del mes en mayúscula y otro en minúscula generó el mismo mes con dos nombres. Tanto a favor de Linux.

Como ves con todas estas cosas se aprende algo y como en la vida.... en cada casa (Sistema Operativo) se hacen las habichuelas a su propia manera  *+* *+*.

Saludos
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 28 de Octubre del 2022, 13:11:48 pm
Entonces la he vuelto a liar al unir a las bravas los dos archivos, no? Por lo de los puntos y comas.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jmviper en 28 de Octubre del 2022, 15:06:45 pm
Posiblemente. Tendrás que ver si la sección que pegaste es como el resto en el tema de decimales.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 28 de Octubre del 2022, 17:11:54 pm
Efectivamente tengo los datos de 1h. y 15 minutos con decimales con comas y separaciones con punto y coma. No quiero ponerlo en español, no tengo ningún interés. Ayer hubo un malentendido ya que creía que había dejado claro que lo quiero en inglés de GB pero repasando lo escrito veo que no es así. Me gustaría reparar estas 72 líneas españolas. No sé si se puede de alguna forma rápida o me armo de paciencia y lo voy cambiando poco a poco. Para empezar las he copiado en un archivo a parte. ¿Alguna sugerencia de por dónde empezar?
Gracias.
Conmigo está el entretenimiento garantizado...

Edito: Solucionado, una breve búsqueda y lo encontré.
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: jantoni en 28 de Octubre del 2022, 18:40:22 pm
Que cosas os pasan!!!!!!!!!!! *+* *+* *+* *+* *+* *+* *+*
Título: Re:Orange Pi y meteoclimatic.py
Publicado por: Telares en 28 de Octubre del 2022, 19:05:50 pm
Que cosas os pasan!!!!!!!!!!! *+* *+* *+* *+* *+* *+* *+*

Si ya sé yo que algunos os lo pasáis pipa con mis aventuras y desventuras informáticas!