https://github.com/bird-house/threddsclient
Thredds catalog client.
Science Score: 10.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
✓Committers with academic emails
1 of 8 committers (12.5%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.4%) to scientific vocabulary
Keywords
python
thredds
thredds-catalogs
Keywords from Contributors
web-processing-service
web-application
remote-execution
ogc
pyramid
wps
ogc-api-processes
ems
cwl
common-workflow-language
Last synced: 6 months ago
·
JSON representation
Repository
Thredds catalog client.
Basic Info
Statistics
- Stars: 5
- Watchers: 13
- Forks: 7
- Open Issues: 1
- Releases: 0
Fork of ScottWales/threddsclient
Topics
python
thredds
thredds-catalogs
Created over 10 years ago
· Last pushed over 1 year ago
Metadata Files
Readme
Changelog
README.rst
=========================
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:
.. code-block:: bash
conda install -c conda-forge threddsclient
From PyPI
---------
Thredds Client is available from PyPI to install directly with ``pip`` or ``poetry``.
.. code-block:: bash
pip install threddsclient
.. code-block:: bash
poetry add threddsclient
From GitHub
-----------
Check out code from the birdy GitHub repo and start the installation:
.. code-block:: bash
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:
.. code-block:: bash
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
------------------------------
.. code-block:: python
import threddsclient
urls = threddsclient.download_urls('http://example.com/thredds/catalog.xml')
Get OpenDAP URLs of a catalog
-----------------------------
.. code-block:: python
import threddsclient
urls = threddsclient.opendap_urls('http://example.com/thredds/catalog.xml')
Navigate in catalog
-------------------
Start reading a catalog
.. code-block:: python
import threddsclient
cat = threddsclient.read_url('http://example.com/thredds/catalog.xml')
Get a list of references to other catalogs & follow them
.. code-block:: python
refs = cat.references
print refs[0].name
cat2 = refs[0].follow()
Get a list of datasets in this catalog
.. code-block:: python
data = cat.datasets
Get flat list of all direct datasets (data files) in the catalog
.. code-block:: python
datasets = cat.flat_datasets()
Get flat list of all references in the catalog
.. code-block:: python
references = cat.flat_references()
Crawl thredds catalog
---------------------
Crawl recursive all direct datasets in catalog following the catalog
references. Stop recursion at a given depth level.
.. code-block:: python
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:
.. code-block:: sh
git clone https://github.com/bird-house/threddsclient.git
cd threddsclient
conda env create -f environment.yml
python setup.py develop
Install additional dependencies:
.. code-block:: sh
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.
.. _bumpversion: https://pypi.org/project/bumpversion/
Examples with IPython Notebook
------------------------------
- `NOAA Thredds
Catalog `__
.. |Travis Build| image:: https://travis-ci.org/bird-house/threddsclient.svg?branch=master
:target: https://travis-ci.org/bird-house/threddsclient
.. |Install with Conda| image:: https://anaconda.org/conda-forge/threddsclient/badges/installer/conda.svg
:target: https://anaconda.org/conda-forge/threddsclient
.. |License| image:: https://anaconda.org/conda-forge/threddsclient/badges/license.svg
:target: https://anaconda.org/conda-forge/threddsclient
.. |Join the Chat| image:: https://badges.gitter.im/bird-house/birdhouse.svg
:target: https://gitter.im/bird-house/birdhouse?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
.. |Version-GitHub| image:: https://img.shields.io/github/v/release/bird-house/threddsclient?label=GitHub
:target: https://github.com/bird-house/threddsclient/releases
.. |Version-Anaconda| image:: https://anaconda.org/conda-forge/threddsclient/badges/version.svg
:target: https://anaconda.org/conda-forge/threddsclient
.. |Version-PyPI| image:: https://img.shields.io/pypi/v/threddsclient?color=blue
:target: https://pypi.org/project/threddsclient/
.. |Downloads| image:: https://anaconda.org/conda-forge/threddsclient/badges/downloads.svg
:target: https://anaconda.org/conda-forge/threddsclient
Owner
- Name: bird-house
- Login: bird-house
- Kind: organization
- Website: http://bird-house.github.io/
- Repositories: 63
- Profile: https://github.com/bird-house
Making Web Processing Services easy
GitHub Events
Total
- Member event: 2
Last Year
- Member event: 2
Committers
Last synced: about 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Carsten Ehbrecht | e****t@d****e | 71 |
| Carsten Ehbrecht | c****n@l****g | 24 |
| Scott Wales | s****s@u****u | 21 |
| pingu | p****u@n****h | 14 |
| Francis Charette Migneault | f****t@g****m | 6 |
| David Caron | d****n@c****a | 2 |
| Thomas Tilak | t****k@g****m | 2 |
| steingod | s****d@m****o | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: over 1 year ago
All Time
- Total issues: 5
- Total pull requests: 12
- Average time to close issues: 7 months
- Average time to close pull requests: 5 days
- Total issue authors: 2
- Total pull request authors: 6
- Average comments per issue: 1.8
- Average comments per pull request: 1.58
- Merged pull requests: 11
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 3
- Average time to close issues: N/A
- Average time to close pull requests: 18 days
- Issue authors: 0
- Pull request authors: 3
- Average comments per issue: 0
- Average comments per pull request: 2.0
- Merged pull requests: 3
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- cehbrecht (4)
- steingod (1)
Pull Request Authors
- cehbrecht (6)
- fmigneault (3)
- davidcaron (1)
- steingod (1)
Top Labels
Issue Labels
enhancement (3)
bug (1)
Pull Request Labels
enhancement (2)
bug (2)
Packages
- Total packages: 2
-
Total downloads:
- pypi 458 last-month
- Total docker downloads: 9
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 9
(may contain duplicates) - Total versions: 12
- Total maintainers: 3
pypi.org: threddsclient
Thredds catalog client
- Documentation: https://threddsclient.readthedocs.io/
- License: Apache 2.0
-
Latest release: 0.4.6
published over 1 year ago
Rankings
Docker downloads count: 3.9%
Dependent repos count: 5.2%
Average: 6.7%
Downloads: 7.7%
Dependent packages count: 10.0%
Maintainers (3)
Last synced:
6 months ago
conda-forge.org: threddsclient
- Homepage: https://github.com/bird-house/threddsclient
- License: Apache-2.0
-
Latest release: 0.4.2
published over 6 years ago
Rankings
Dependent repos count: 23.2%
Average: 47.6%
Dependent packages count: 51.3%
Forks count: 53.2%
Stargazers count: 62.6%
Last synced:
7 months ago
Dependencies
.github/workflows/tests.yml
actions
- actions/checkout v3 composite
- actions/setup-python v4 composite
- fkirc/skip-duplicate-actions v5 composite
environment.yml
pypi
requirements-dev.txt
pypi
- bumpversion * development
- flake8 * development
- pytest * development
- pytest-cov * development
requirements.txt
pypi
- beautifulsoup4 *
- lxml *
- requests *
setup.py
pypi