Skip to main content

Thredds catalog client

Project description

Thredds Client for Python

Travis Build Install with Conda Join the Chat

Installing Thredds Client

Anaconda

Version-GitHub Version-Anaconda Version-PyPI Downloads

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

conda install -c conda-forge threddsclient

From PyPI

Thredds Client is available from PyPI to install directly with pip or poetry.

pip install threddsclient
poetry add threddsclient

From GitHub

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

git clone https://github.com/bird-house/threddsclient.git
cd threddsclient
conda env create -f environment.yml
source activate threddsclient
python setup.py develop

Alternatively, you can also install it directly with pip using a virtual environment of your choice:

pip install "threddsclient @ git+https://github.com/bird-house/threddsclient.git"

Using Thredds Client

Read the Thredds tutorial on catalogs: Thredds Catalog Primer

Get download URLs of a catalog

import threddsclient
urls = threddsclient.download_urls('http://example.com/thredds/catalog.xml')

Get OpenDAP URLs of a catalog

import threddsclient
urls = threddsclient.opendap_urls('http://example.com/thredds/catalog.xml')

Crawl thredds catalog

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

import threddsclient
for ds in threddsclient.crawl('http://example.com/thredds/catalog.xml', depth=2):
    print ds.name

Development

Install sources

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

git clone https://github.com/bird-house/threddsclient.git
cd threddsclient
conda env create -f environment.yml
python setup.py develop

Install additional dependencies:

conda install pytest flake8 sphinx bumpversion
# OR
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 {NEW_VERSION} patch

  • Do it: bumpversion --new-version {NEW_VERSION} patch

  • Push it: git push --tags

See the bumpversion documentation for details.

Examples with IPython Notebook

Authors

Changes

Unreleased

  • Nothing new for the moment.

0.4.7 (2025-12-15)

  • Add url and download_url to project setup for reference by PyPI package.

  • Add Python 3.13 and 3.14 to CI and project.

  • Update default Python 3.13 in CI for tests.

  • Remove Python 3.6 and 3.7 from CI.

0.4.6 (2024-07-09)

  • Drop Python 3.7.

  • Add Python 3.12.

0.4.5 (2024-01-22)

  • Fixed TDS v5 and HYRAX catalog traversing issue (#15)

0.4.4 (2023-07-11)

  • add shield badges for PyPI and GitHub releases

  • fix rendering of code blocks in README.rst

  • add missing classifiers and python requirements to setup.py to allow validators to detect appropriate versions

  • add python 3.9, 3.10 and 3.11 to the supported versions in setup.py and validate them in GitHub CI

  • drop Travis CI configuration in favor of GitHub CI

  • fix test_noaa with the target THREDDS server responding differently than originally tested

0.4.3 (2023-05-31)

  • fix xml parsing for recent versions

0.4.2 (2019-11-20)

  • fixed conda links in Readme.

0.4.1 (2019-11-06)

  • fixed docs formatting.

0.4.0 (2019-11-06)

  • drop Python 2.7 (#5)

  • fix pip install (#4)

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.

  • MANIFEST.in 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)

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

threddsclient-0.4.7.tar.gz (18.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

threddsclient-0.4.7-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file threddsclient-0.4.7.tar.gz.

File metadata

  • Download URL: threddsclient-0.4.7.tar.gz
  • Upload date:
  • Size: 18.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for threddsclient-0.4.7.tar.gz
Algorithm Hash digest
SHA256 3e936d98cbf2b864a500dec81d2a90714e08565c71edfcb319a0fc3affd10665
MD5 ff42f31f89259d0c576eba24252ad5ac
BLAKE2b-256 769e3dfbdc2d9b6283f22cf326c3529230067d5773627fa58fe37c8aac013ba0

See more details on using hashes here.

Provenance

The following attestation bundles were made for threddsclient-0.4.7.tar.gz:

Publisher: publish.yml on bird-house/threddsclient

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file threddsclient-0.4.7-py3-none-any.whl.

File metadata

  • Download URL: threddsclient-0.4.7-py3-none-any.whl
  • Upload date:
  • Size: 13.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for threddsclient-0.4.7-py3-none-any.whl
Algorithm Hash digest
SHA256 67d713effdf5d8bff257137d45a10bd8b4c95a2f37ae77e42e8eb271f6caf40d
MD5 1ea717ff25f8078c701b1207663389ee
BLAKE2b-256 ac3afa38178cff57d35602840b8489f589c05b3ff635e46c125fcb271ee40444

See more details on using hashes here.

Provenance

The following attestation bundles were made for threddsclient-0.4.7-py3-none-any.whl:

Publisher: publish.yml on bird-house/threddsclient

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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