Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Python library for accessing a Kisters WISKI system via the KiWIS API.

Project description

Python library for querying WISKI via KiWIS (KISTERS Web Interoperability Solution). See: http://www.kisters.net/NA/products/wiski/options/web-services/

https://raw.githubusercontent.com/amacd31/kiwis_pie/master/kiwis_and_pie.jpg

Dependencies

Requires the Python libraries requests, pandas and tabulate.

Installation

Install from PyPI:

pip install kiwis-pie

or install directly from github:

pip install git+https://github.com/amacd31/kiwis_pie.git

Usage

Example fetching some data from the KiWIS service that backs: http://kna.kisters.net/sjr/kiwidgets/tests/SanJoaquinRiver/

from datetime import date
from kiwis_pie import KIWIS
k = KIWIS('http://kna.kisters.net/grassland/KiWIS')

# Get station ID for 'SAN JOAQUIN RIVER NEAR PATTERSON'
station_id = k.get_station_list(station_name = 'SAN JOAQUIN RIVER NEAR PATTERSON').station_id.values[0]

# Get timeseries ID for 3-Hourly streamflow (Q) at SAN JOAQUIN RIVER NEAR PATTERSON
ts_id = k.get_timeseries_list(station_id = station_id, parametertype_name = 'Q', ts_name = '3-Hourly').ts_id.values[0]

# Read one day of 3-Hourly flow data for SAN JOAQUIN RIVER NEAR PATTERSON
k.get_timeseries_values(ts_id = ts_id, to = date(2016,1,1), **{'from': date(2016,1,1)})

Example using the KiWIS service that backs the Australian Bureau of Meteorology’s Water Data Online service: http://www.bom.gov.au/waterdata/

from datetime import date
from kiwis_pie import KIWIS
k = KIWIS('http://www.bom.gov.au/waterdata/services')

# Get station ID for 'Cotter River at Gingera'
station_id = k.get_station_list(station_name = 'Cotter R. at Gingera').station_id.values[0]

# Get timeseries ID for daily mean streamflow (Q) at Cotter River at Gingera
ts_id = k.get_timeseries_list(station_id = station_id, ts_name = 'DMQaQc.Merged.DailyMean.24HR', parametertype_name = 'Water Course Discharge').ts_id.values[0]

# Read 31 days of daily water course discharge data for Cotter River at Gingera
k.get_timeseries_values(ts_id = ts_id, to = date(2016,1,31), **{'from': date(2016,1,1)})

# Optionally use the `keep_tz` option to return in local timezone instead of UTC
k.get_timeseries_values(ts_id = ts_id, to = date(2016,1,31), **{'from': date(2016,1,1)}, keep_tz=True)

Documentation

The methods on the KIWIS class all have docstrings detailing the keyword arguments they take. Rendered documentation is available on Read the Docs: http://kiwis-pie.readthedocs.io/en/latest/

Project details


Download files

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

Files for kiwis-pie, version 0.10.0
Filename, size File type Python version Upload date Hashes
Filename, size kiwis-pie-0.10.0.tar.gz (75.5 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page