add example of accessing darksky forecast using the IO Weather Service and Adafruit IO API
This commit is contained in:
parent
37403c96f5
commit
2dfaa712ac
1 changed files with 41 additions and 0 deletions
41
examples/api/weather.py
Normal file
41
examples/api/weather.py
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
"""
|
||||
'weather.py'
|
||||
================================================
|
||||
Dark Sky Hyperlocal for IO Plus
|
||||
with Adafruit IO API
|
||||
|
||||
Author(s): Brent Rubell for Adafruit Industries
|
||||
"""
|
||||
# Import JSON for forecast parsing
|
||||
import json
|
||||
# Import Adafruit IO REST client.
|
||||
from Adafruit_IO import Client, Feed, RequestError
|
||||
|
||||
# Set to your Adafruit IO key.
|
||||
ADAFRUIT_IO_USERNAME = 'YOUR_IO_USERNAME'
|
||||
ADAFRUIT_IO_KEY = 'YOUR_IO_PASSWORD'
|
||||
|
||||
# Create an instance of the REST client.
|
||||
aio = Client(ADAFRUIT_IO_USERNAME, ADAFRUIT_IO_KEY)
|
||||
|
||||
# Grab the weather JSON
|
||||
weather = aio.receive_weather(1234)
|
||||
weather = json.dumps(weather)
|
||||
forecast = json.loads(weather)
|
||||
|
||||
# Parse the current forecast
|
||||
current = forecast['current']
|
||||
print('Current Forecast')
|
||||
print('It is {0} and {1}.'.format(current['summary'], current['temperature']))
|
||||
|
||||
# Parse the two day forecast
|
||||
forecast_days_2 = forecast['forecast_days_2']
|
||||
print('\nWeather in Two Days')
|
||||
print('It will be {0} with a high of {1}F and a low of {2}F.'.format(
|
||||
forecast_days_2['summary'], forecast_days_2['temperatureLow'], forecast_days_2['temperatureHigh']))
|
||||
|
||||
# Parse the five day forecast
|
||||
forecast_days_5 = forecast['forecast_days_5']
|
||||
print('\nWeather in Five Days')
|
||||
print('It will be {0} with a high of {1}F and a low of {2}F.'.format(
|
||||
forecast_days_5['summary'], forecast_days_5['temperatureLow'], forecast_days_5['temperatureHigh']))
|
||||
Loading…
Reference in a new issue