Skip to main content

Python wrapper for the frost.met.no API

Project description

frost-client

Build Status

Documentation Status

This Python client wraps the Frost API. You should read up on those docs before using this client. And be sure to check out met.no's Terms of Use

The main purpose of this client is returns Pandas Dataframes from Frost API data.

This is an unofficial client. We have no relationship to met.no

Documentation: https://frost-client.readthedocs.io/en/latest/

Install

Requires Python 3.7

pip install frost-client

or if you want the response from the API returned as Pandas DataFrame, use:

pip install frost-client[pandas]

or using pipenv:

pipenv install frost-client[pandas]

Usage

The Frost API key should be exposed as a environment variable:

FROST_API_KEY=xxxxxx

or passed as a username parameter when creating and instance of the class.

Get weather data sources

Get all available observation sources (stations) for Hordaland county (12)

from frost.client import APIError, Frost
f = Frost()
res = f.get_sources(county='12')

# return as Pandas Dataframe (requires Pandas installed)
df = res.to_df()

# return IDs of sources as list
ids = res.to_ids_list()

Get available time series

Display available time series for a station (here Bergen - Florida)

from frost.client import APIError, Frost
f = Frost()
res = f.get_available_timeseries(sources=['SN50540'])

# return as Pandas Dataframe
df = res.to_df()

Get observations

Display observations for a station (here Bergen - Florida)

from frost.client import APIError, Frost
f = Frost()
res = f.get_observations(
            sources=['SN50540'],
            elements=['sum(precipitation_amount P1D)'],
            timeoffsets=['PT6H'],
            referencetime='2018-01-01/2018-02-01')
df = res.to_df()

See tests for more examples.

Local development

You should use pipenv

Tests

Enable the pipenv with

pipenv shell

Make sure to export env variable

FROST_API_KEY=xxxxxx

To run all tests:

nosetests

To run specific tests:

nosetests tests.test_requests:TestFrostRequests.test_get_sources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

frost-client-0.1.4.tar.gz (8.1 kB view hashes)

Uploaded Source

Built Distribution

frost_client-0.1.4-py3-none-any.whl (11.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page