Thredds catalog client
Project description
Thredds Client for Python
Installing Thredds Client
Anaconda
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
Changes
Unreleased
Nothing new for the moment.
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)
Version by https://github.com/ScottWales/threddsclient.
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.