Skip to main content

A client-only fork of pydap using the DAP protocol to access scientific data on the internet.

Project description

Tests Test Coverage Latest release BSD-3 clause license dapclient downloads PyPI - Python Version

dapclient - Quick Guide

dapclient is a client-only fork of the venerable pydap. It implements the Opendap/DODS protocol. You can use dapclient to access scientific data on the internet without having to download it; instead, you work with special array and iterable objects that download data on-the-fly as necessary, saving bandwidth and time.

Why fork pydap?

  • Simplify the codebase by remove the server side code

  • Update the code to use modern python 3.8+

  • Up-to-date pypi and conda packages

This version has no additional features, and it only has a few tests. My immediate goal is to have pip and conda packages to support my tsgettoolbox package. I will add tests and features as time (and pull requests!) allow.

Quickstart

You can install the latest version using [pip](http://pypi.python.org/pypi/pip) or conda.

$ pip install dapclient

Also maintained on the conda-forge channel [conda channel](https://anaconda.org/conda-forge/dapclient):

$ conda install -c conda-forge dapclient

This will install dapclient together with all the required dependencies. You can now open any remotely served dataset, and dapclient will download the accessed data on-the-fly as needed:

>>> from dapclient.client import open_url
>>> dataset = open_url('http://test.opendap.org/dap/data/nc/coads_climatology.nc')
>>> var = dataset['SST']
>>> var.shape
(12, 90, 180)
>>> var.dtype
dtype('>f4')
>>> data = var[0,10:14,10:14]  # this will download data from the server
>>> data
<GridType with array 'SST' and maps 'TIME', 'COADSY', 'COADSX'>
>>> print(data.data)
[array([[[ -1.26285708e+00,  -9.99999979e+33,  -9.99999979e+33, -9.99999979e+33],
        [ -7.69166648e-01,  -7.79999971e-01,  -6.75454497e-01, -5.95714271e-01],
        [  1.28333330e-01,  -5.00000156e-02,  -6.36363626e-02, -1.41666666e-01],
        [  6.38000011e-01,   8.95384610e-01,   7.21666634e-01, 8.10000002e-01]]], dtype=float32),
           array([ 366.]),
           array([-69., -67., -65., -63.]),
           array([ 41.,  43.,  45.,  47.])]

For more information, please check the documentation on [using dapclient as a client](https://timcera.bitbucket.io/dapclient/client.html).

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

dapclient-1.0.4.tar.gz (2.2 MB view hashes)

Uploaded Source

Built Distribution

dapclient-1.0.4-py3-none-any.whl (53.3 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