Skip to content

Truco Windows: previsión del tiempo usando Powershell

Obtener la previsión del tiempo usando Powershell

En el truco de hoy para sistemas Windows veremos lo chulo que resulta obtener datos meteorológicos utilizando un terminal de comandos como Powershell. Aunque sea algo más fácil usar un buscador para ello, este método es bastante más geek.

Powershell es una forma avanzada del intérprete de comandos más antiguo de Windows, conocido como CMD o Command Prompt (en castellano, «símbolo de sistema»).

El servicio que vamos a utilizar es wttr.in y también nos permite ver datos en tiempo real desde el navegador.

Obtener pronóstico del tiempo usando Windows Powershell

Utilizaremos para las consultas el cmdlet Invoke-RestMethod, que responde a los alias de curl y wget en Powershell y permite leer los contenidos web mediante una consola.

El uso más simple de la herramienta lo podemos obtener de la siguiente forma:

(curl http://wttr.in/?Q0 -UserAgent "curl" ).Content

wttr.in - uso simple

Con esto obtenemos el pronóstico del tiempo actual.

El tiempo en una ciudad concreta

(curl http://wttr.in/Madrid -UserAgent "curl" ).Content

wttr.in - ciudad

También es posible indicar el país añadiéndolo de la siguiente manera:

(curl "http://wttr.in/Madrid,Spain" -UserAgent "curl" ).Content

Si os fijáis hemos tenido que añadir dobles comillas en este caso.

Sistema métrico y grados Celsius

Con la siguiente expresión podemos pasar de grados Fahrenheit (ºF) a Celsius (ºC) y Mph a Km/h, algo que es mucho más relevante en Europa.

(curl http://wttr.in/Madrid?m -UserAgent "curl" ).Content

wttr.in - sistema métrico y grados celsius

El user agent lo podemos cambiar entre curl y wget a nuestro antojo, ambos funcionan igual.

En castellano

También os interesará saber que podemos cambiar el idioma a castellano con este parámetro:

(curl wttr.in/Madrid?lang=es -UserAgent "curl" ).Content

Versión mínima

Con la siguiente expresión podremos ver una previsión del tiempo reducida que incluye solo la tarde y la noche.

(curl wttr.in/Madrid?n -UserAgent "curl" ).Content

De igual forma, si queremos ver el tiempo actual escribiremos:

(curl wttr.in/Madrid?0 -UserAgent "curl" ).Content

PNG

Esto permite generar una imagen en lugar de la clásica salida de consola.

(curl http://wttr.in/Madrid?m.png -UserAgent «curl» ).Content

wttr.in - formato png

Sintaxis y ayuda

El programa cuenta con ayuda integrada donde podemos consultar el uso admitido, escribiendo:

(curl http://wttr.in/:help -UserAgent "curl" ).Content

Lo que veremos es la siguiente salida:

Usage:

$ curl wttr.in # current location
$ curl wttr.in/muc # weather in the Munich airport

Supported location types:

/paris # city name
/~Eiffel+tower # any location
/Москва # Unicode name of any location in any language
/muc # airport code (3 letters)
/@stackoverflow.com # domain name
/94107 # area codes
/-78.46,106.79 # GPS coordinates

Special locations:

/moon # Moon phase (add ,+US or ,+France for these cities)
/moon@2016-10-25 # Moon phase for the date (@2016-10-25)

Units:

m # metric (SI) (used by default everywhere except US)
u # USCS (used by default in US)
M # show wind speed in m/s

View options:

0 # only current weather
1 # current weather + 1 day
2 # current weather + 2 days
A # ignore User-Agent and force ANSI output format (terminal)
F # do not show the «Follow» line
n # narrow version (only day and night)
q # quiet version (no «Weather report» text)
Q # superquiet version (no «Weather report», no city name)
T # switch terminal sequences off (no colors)

PNG options:

/paris.png # generate a PNG file
p # add frame around the output
t # transparency 150
transparency=… # transparency from 0 to 255 (255 = not transparent)

Options can be combined:

/Paris?0pq
/Paris?0pq&lang=fr
/Paris_0pq.png # in PNG the file mode are specified after _
/Rome_0pq_lang=it.png # long options are separated with underscore

Localization:

$ curl fr.wttr.in/Paris
$ curl wttr.in/paris?lang=fr
$ curl -H «Accept-Language: fr» wttr.in/paris

Supported languages:

af da de el et fr fa hu id it nb nl pl pt-br ro ru tr uk vi (supported)
az be bg bs ca cy cs eo es fi ga hi hr hy is ja jv ka kk ko ky lt lv mk ml nl fy nn pt pt-br sk sl sr sr-lat sv sw th te uz zh zu he (in progress)

Special URLs:

/:help # show this page
/:bash.function # show recommended bash function wttr()
/:translation # show the information about the translators

Obtención de las fases lunares

Para despedirme os dejo una variante bastante chula que nos muestra las fases lunares según la ubicación predeterminada o escogiendo una de nuestra elección:

(curl wttr.in/Moon -UserAgent "curl" ).Content

wttr.in - Fases lunares

Hasta aquí el truco de hoy! No olvides que si te gusta, puedes revisar otros artículos relacionados con Powershell 🙂

deweloper View All

Trabajo como consultor de ciberseguridad y me gusta lo que hago. Aficionado a la informática / tecnología en general, me gusta compartir con la gente lo poco que sé. También soy aficionado al deporte y los videojuegos.

2 thoughts on “Truco Windows: previsión del tiempo usando Powershell Leave a comment

Deja un comentario