CHANGE displayweather response.

pull/3/head
kevincaires 3 years ago
parent 11de44cc7d
commit 18d0d615d0

@ -1,9 +1,10 @@
import json
import logging
import urllib.request
from collections import namedtuple
from settings.config import OW_API_CONFIG
import urllib.request
import json
def geocode(city = 'curitiba', state = 'parana', country = 'BR') -> str:
"""
@ -40,58 +41,64 @@ def getweatherdata(lat, lon):
return weatherdata
def displayweather(wdata):
def displayweather(wdata) -> object:
"""
"Prettifies" the output for discord
"""
try:
wdata['weather'][0]['description']
description = wdata['weather'][0]['description']
except:
description = "No data on description"
description = None
try:
wdata['main']['temp']
temp = wdata['main']['temp']
tempmsg = f"Temperature is {temp}ºC"
tempmsg = wdata['main']['temp']
except:
tempmsg = "No data on temperature"
tempmsg = None
try:
wdata['main']['feels_like']
feels_like = wdata['main']['feels_like']
feels_likemsg = f"Feels like {feels_like}ºC"
feels_likemsg = wdata['main']['feels_like']
except:
feels_likemsg = "No data on perceived temperature"
feels_likemsg = None
try:
wdata['main']['humidity']
humidity = wdata['main']['humidity']
humiditymsg = f"Humidity is {humidity}%"
humiditymsg = wdata['main']['humidity']
except:
humiditymsg = "No data on humidity"
humiditymsg = None
try:
wdata['wind']['speed']
wind_speed = wdata['wind']['speed']
wind_speedmsg = f"Wind speed is {wind_speed}m/s"
wind_speedmsg = wdata['wind']['speed']
except:
wind_speedmsg = "No data on wind speed"
wind_speedmsg = None
try:
wdata['wind']['gust']
wind_gusts = wdata['wind']['gust']
wind_gustsmsg = f"with gusts of {wind_gusts}m/s"
wind_gustsmsg = wdata['wind']['gust']
except:
wind_gustsmsg = "with no data on gusts"
wind_gustsmsg = None
try:
wdata['clouds']['all']
cloud_coverage = wdata['clouds']['all']
cloud_coveragemsg = f"Cloud coverage is {cloud_coverage}%"
cloud_coveragemsg = wdata['clouds']['all']
except:
cloud_coveragemsg = "No data on cloud coverage"
name = wdata['name']
cloud_coveragemsg = None
msg = f"""
```
Weather for {name}:
{description}, {tempmsg}. {feels_likemsg}. {humiditymsg}.
{wind_speedmsg}, {wind_gustsmsg}. {cloud_coveragemsg}.
```"""
name = wdata['name']
obj = namedtuple('Weather', [
'name',
'description',
'temp',
'feels_like',
'humidity',
'wind_speed',
'wind_gusts',
'cloud_coverage',
])
weather = obj(*(
name,
description,
tempmsg,
feels_likemsg,
humiditymsg,
wind_speedmsg,
wind_gustsmsg,
cloud_coveragemsg
))
return msg
return weather

Loading…
Cancel
Save