WMO WIS Catalogue analysis tool
Project description
pywiscat
Pythonic API to WMO WIS Catalogue
pywiscat provides a Pythonic API atop the WMO WIS2 Catalogue in support of reporting and analysis of the WIS2 Catalogue and its associated discovery metadata.
Installation
pip
Install latest stable version from PyPI.
pip3 install pywiscat
From source
Install latest development version.
python3 -m venv pywiscat
cd pywiscat
. bin/activate
git clone https://github.com/wmo-im/pywiscat.git
cd pywiscat
pip3 install -r requirements.txt
python3 setup.py build
python3 setup.py install
Running
The canonical URL for the GDC is https://api.weather.gc.ca.
To use a different catalogue, set the PYWISCAT_GDC_URL
environmnent variable before running pywiscat.
From command line:
# fetch version
pywiscat --version
## WIS2 workflows
# search the WIS2 Global Discovery Catalogue (GDC)
pywiscat search
# search the WIS2 Global Discovery Catalogue (GDC) with a full text query
pywiscat search --query radar
# search the WIS2 Global Discovery Catalogue (GDC) for only recommended data
pywiscat search --data-policy recommended
# search the WIS2 Global Discovery Catalogue (GDC) with a bounding box query
pywiscat search --bbox -142,42,-52,84
# get more information about a WIS2 GDC record
pywiscat get urn:x-wmo:md:can:eccc-msc:c7c9d726-c48a-49e3-98ab-78a1ab87cda8
Using the API
## WIS2 workflows
from pywiscat.wis2.catalogue import search, get
# search catalogue
results = search(q='radar', bbox=[-142, 42, -52, 84]))
# get a single catalogue record
results = get('urn:x-wmo:md:can:eccc-msc:c7c9d726-c48a-49e3-98ab-78a1ab87cda8')
Development
python3 -m venv pywiscat
cd pywiscat
source bin/activate
git clone https://github.com/wmo-im/pywiscat.git
pip3 install -r requirements.txt
pip3 install -r requirements-dev.txt
python3 setup.py install
Running tests
# via setuptools
python3 setup.py test
# manually
python3 tests/run_tests.py
Releasing
# create release (x.y.z is the release version)
vi pywiscat/__init__.py # update __version__
git commit -am 'update release version x.y.z'
git push origin master
git tag -a x.y.z -m 'tagging release version x.y.z'
git push --tags
# upload to PyPI
rm -fr build dist *.egg-info
python3 setup.py sdist bdist_wheel --universal
twine upload dist/*
# publish release on GitHub (https://github.com/wmo-im/pywiscat/releases/new)
# bump version back to dev
vi pywiscat/__init__.py # update __version__
git commit -am 'back to dev'
git push origin master
Code Conventions
Issues
Issues are managed at https://github.com/wmo-im/pywiscat/issues
Contact
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pywiscat-0.2.0.tar.gz
(8.4 kB
view details)
Built Distribution
File details
Details for the file pywiscat-0.2.0.tar.gz
.
File metadata
- Download URL: pywiscat-0.2.0.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/1.1.3 pkginfo/1.9.6 requests/2.28.2 requests-toolbelt/0.8.0 tqdm/4.64.1 CPython/3.7.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca819e90c929ca8a71a9e580e4f8edad81672372f9828491e8a600dd21ac8451 |
|
MD5 | aab9e19ecdae5c5648905706ab6c2469 |
|
BLAKE2b-256 | bd266c50411d2bab511cce59a2d5ec0e59e7380320bb97ce27bd030298dba5be |
File details
Details for the file pywiscat-0.2.0-py2.py3-none-any.whl
.
File metadata
- Download URL: pywiscat-0.2.0-py2.py3-none-any.whl
- Upload date:
- Size: 10.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/1.1.3 pkginfo/1.9.6 requests/2.28.2 requests-toolbelt/0.8.0 tqdm/4.64.1 CPython/3.7.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | df2ac03859ce926fc5f0e553a90047fb442ada33bcc9aafd54db168bdc2ef374 |
|
MD5 | 8e45918b201a92832c10e923bdbc59ee |
|
BLAKE2b-256 | 4be3a14f159f33eaa21fa2df6602b63483cad07a5819e3d7a68ceb3875925661 |