Install & Compatibility
Where this runs
tested against v0.10.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.686s · 171.3MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 9.1s · import 0.620s · 164MB
171MB installed
● package 171MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
TDSCatalog
✓ from siphon.catalog import TDSCatalog
✗ from siphon import TDSCatalog
TDSCatalog is not in the top-level siphon namespace; must import from siphon.catalog.
NCSS
✓ from siphon.ncss import NCSS
✗ from siphon import NCSS
NCSS (NetCDF Subset Service) is in siphon.ncss.
remote_open
✓ from siphon.ncss import remote_open
remote_open is a utility function in the ncss module.
Connects to a THREDDS Data Server catalog and lists available datasets.
from siphon.catalog import TDSCatalog
# Create a catalog object for the Unidata THREDDS server
cat = TDSCatalog('https://thredds.ucar.edu/thredds/catalog.xml')
# List datasets
print(list(cat.datasets)[:5])
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'siphon'
Siphon is not installed or installed in a different environment.
fixRun 'pip install siphon' in the correct Python environment.
AttributeError: module 'siphon' has no attribute 'TDSCatalog'
TDSCatalog is not in the top-level siphon module.
fixUse 'from siphon.catalog import TDSCatalog'.
requests.exceptions.ConnectionError: HTTPSConnectionPool
Network issue or incorrect URL when accessing a THREDDS server.
fixVerify the catalog URL is correct and reachable. Use 'https://thredds.ucar.edu/thredds/catalog.xml' as a test.
Upgrade
Version history
0.10.0latest on PyPI · released Dec 13, 2024
Audit
Dependencies
beautifulsoup4requiredRequired for parsing XML/HTML responses from TDS catalogs.
requestsrequiredUsed for HTTP requests to remote data servers.