OpenWeatherMap.py 974 B

12345678910111213141516171819202122232425262728293031323334353637
  1. import pyowm
  2. from core.NeuronModule import NeuronModule
  3. class OpenWeatherMap(NeuronModule):
  4. def __init__(self, **kwargs):
  5. # get message to spell out loud
  6. super(OpenWeatherMap, self).__init__(**kwargs)
  7. api_key = kwargs.get('api_key', None)
  8. location = kwargs.get('location', None)
  9. date = kwargs.get('date', None)
  10. if api_key is None:
  11. raise NotImplementedError("OpenWeatherMap neuron needs an api_key")
  12. if location is None:
  13. raise NotImplementedError("OpenWeatherMap neuron needs a location")
  14. owm = pyowm.OWM(api_key)
  15. # forecast = owm.daily_forecast(location)
  16. # tomorrow = pyowm.timeutils.tomorrow()
  17. # forecast.will_be_sunny_at(tomorrow)
  18. observation = owm.weather_at_place(location)
  19. weather = observation.get_weather()
  20. message = {
  21. "date": date,
  22. "weathers": weather,
  23. }
  24. self.say(message)