Skip to main content
Join the official Python Developers Survey 2018 and win valuable prizes: Start the survey!

Thredds catalog client

Project description

Thredds Client for Python

|Travis Build| |Install with Conda| |Join the Chat|

Installing Thredds Client


|Version| |Downloads|

Thredds client is available as Anaconda package. Install it with the
following command:

.. code:: bash

$ conda install -c birdhouse -c conda-forge threddsclient

From github

Check out code from the birdy GitHub repo and start the installation:

.. code:: bash

$ git clone
$ cd threddsclient
$ conda env create -f environment.yml
$ source activate threddsclient
$ python develop

Using Thredds Client

Read the Thredds tutorial on catalogs: `Thredds Catalog
Primer <>`__

Get download URLs of a catalog

.. code:: python

import threddsclient
urls = threddsclient.download_urls('')

Get OpenDAP URLs of a catalog

.. code:: python

import threddsclient
urls = threddsclient.opendap_urls('')

Navigate in catalog

Start reading a catalog

.. code:: python

import threddsclient
cat = threddsclient.read_url('')

Get a list of references to other catalogs & follow them

.. code:: python

refs = cat.references

print refs[0].name
cat2 = refs[0].follow()

Get a list of datasets in this catalog

.. code:: python

data = cat.datasets

Get flat list of all direct datasets (data files) in the catalog

.. code:: python

datasets = cat.flat_datasets()

Get flat list of all references in the catalog

.. code:: python

references = cat.flat_references()

Crawl thredds catalog

Crawl recursive all direct datasets in catalog following the catalog
references. Stop recusion at a given depth level.

.. code:: python

import threddsclient
for ds in threddsclient.crawl('', depth=2):


Install sources

Check out code from the birdy GitHub repo and start the installation:

.. code-block:: sh

$ git clone
$ cd threddsclient
$ conda env create -f environment.yml
$ python develop

Install additional dependencies::

$ conda install pytest flake8 sphinx bumpversion
$ pip install -r requirements_dev.txt

Bump a new version

Make a new version of Birdy in the following steps:

* Make sure everything is commit to GitHub.
* Update ``CHANGES.rst`` with the next version.
* Dry Run: ``bumpversion --dry-run --verbose --new-version 0.3.4 patch``
* Do it: ``bumpversion --new-version 0.3.4 patch``
* ... or: ``bumpversion --new-version 0.4.0 minor``
* Push it: ``git push --tags``

See the bumpversion_ documentation for details.

.. _bumpversion:

Examples with IPython Notebook

- `NOAA Thredds
Catalog <>`__

.. |Travis Build| image::
.. |Install with Conda| image::
.. |License| image::
.. |Join the Chat| image::
.. |Version| image::
.. |Downloads| image::


* Scott Wales
* Carsten Ehbrecht


0.3.5 (2018-10-05)

* support for Python 3.x (#1)

0.3.4 (2015-10-25)

* fixed travis build/tests
* updated docs

0.3.3 (2015-10-24)

* converted docs to rst.
* added.

0.3.2 (2015-07-15)

* append catalog.xml to catalog url if missing
* crawl method added

0.3.1 (2015-06-14)

* fixed catalog.follow()
* using dataset.download_url()
* added ipython example
* cleaned up Readme

0.3.0 (2015-06-13)

* Refactored
* added catalog.opendap_urls()

0.2.0 (2015-06-08)

* Refactored
* using CollectionDataset
* added catalog.download_urls()

0.1.1 (2015-06-05)

* Fixed catalog generation.
* added pytest dependency.

0.1.0 (2015-03-13)

* Version by

Project details

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
threddsclient-0.3.5.tar.gz (15.4 kB) Copy SHA256 hash SHA256 Source None Oct 16, 2018

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