コード例 #1
0
def get_current_conditions():
    time = (datetime.datetime.now().hour *
            6) + (datetime.datetime.now().minute / 10)
    day = datetime.datetime.now().weekday() + 1
    if day == 6 or day == 7:
        weekend = 1
    else:
        weekend = 0

    # Using the dark skies API to get current temperture and if it's raining
    forecast = Forecast(apikey='7e616dba73de03ba9222e6ed09a3e88e',
                        latitude=40.7246,
                        longitude=-74.0021)
    current = forecast.get_currently()
    mean = current['temperature']
    rain = current['precipIntensity'] * 24

    conditions = [time, rain, mean, weekend]

    for j in range(1, 8):
        if j == day:
            conditions.append(1)
        else:
            conditions.append(0)

    conditions = np.array(conditions)
    conditions = conditions.reshape(1, -1)
    return conditions
コード例 #2
0
def test_forecast_currently():
    HTTPretty.register_uri(
        HTTPretty.GET,
        'https://api.forecast.io/forecast/1234/38.9717,-95.235',
        body=open('tests/full.json', 'r').read(),
        content_type='text/json')

    forecast = Forecast(apikey, latitude=latitude, longitude=longitude)
    currently = forecast.get_currently()

    assert 'precipIntensity' in currently.keys()
    assert 'temperature' in currently.keys()
    assert 'icon' in currently.keys()
    assert 'cloudCover' in currently.keys()
    assert 'summary' in currently.keys()
    assert 'pressure' in currently.keys()
    assert 'windSpeed' in currently.keys()
    assert 'visibility' in currently.keys()
    assert 'time' in currently.keys()
    assert 'humidity' in currently.keys()
    assert 'windBearing' in currently.keys()

    assert currently['temperature'] == 58.9
    assert currently.temperature == 58.9
    assert currently['summary'] == u'Mostly Cloudy'
    assert currently['time'] == datetime(2013, 3, 28, 19, 8, 25)
コード例 #3
0
def test_forecast_currently():
    body_fixture = open('tests/fixtures/full.json', 'r').read()
    httpretty.register_uri(httpretty.GET, API_URL, body=body_fixture,
        content_type='text/json')

    forecast = Forecast(API_KEY, latitude=LATITUDE, longitude=LONGITUDE)
    currently = forecast.get_currently()

    assert 'precipIntensity' in currently.keys()
    assert 'temperature' in currently.keys()
    assert 'icon' in currently.keys()
    assert 'cloudCover' in currently.keys()
    assert 'summary' in currently.keys()
    assert 'pressure' in currently.keys()
    assert 'windSpeed' in currently.keys()
    assert 'visibility' in currently.keys()
    assert 'time' in currently.keys()
    assert 'humidity' in currently.keys()
    assert 'windBearing' in currently.keys()

    assert currently['temperature'] == 58.9
    assert currently.temperature == 58.9
    assert currently['summary'] == u'Mostly Cloudy'
    assert str(currently['time'].astimezone(pytz.utc)) == str(pytz.utc.localize(datetime(2013, 3, 29, 0, 8, 25)))