Skip to main content

Fetchez

Fetch geospatial data with ease.

Version License Python PyPI version Conda Version Project Chat

Fetchez is a lightweight, modular, and highly extendable Python framework designed to orchestrate geospatial data engineering workflows.

Originally developed as the core fetching engine for the CUDEM project, Fetchez has evolved into a standalone ETL platform. It seamlessly retrieves Bathymetry, Topography, Imagery, and Oceanographic data from dozens of global repositories (NOAA, USGS, Copernicus, ESA) and processes it on the fly.


❓ Why Fetchez?

Geospatial data engineering is traditionally fragmented. You often need one script to query an API, another tool to download the files, a GIS application to clip the data, and complex shell scripts to tie it all together.

Fetchez unifies the entire pipeline.

  • Unified Interface: Access 50+ different modules using the exact same syntax.

  • Parallel Fetching: High-performance, multi-threaded downloading with automatic retry, timeout handling, and partial-download resumption.

  • Infrastructure as Code: Define complex data pipelines, cropping, and gridding workflows using CLI switches or simple YAML "Recipes".

  • Pipeline Hooks: Transparently stream, filter, and process data (via globato and transformez) as it is being downloaded.

  • Execution Lifecycle: Fetchez formally separates data engineering into distinct phases (manifest -> file -> stream -> collection). This guarantees that file operations, in-memory stream processing, and final collection operations always happen in the correct order.

  • Infinite Extensibility: Built on a modern plugin architecture. Drop custom Python scripts into a local folder, or install community extensions via pip to add your own data sources, domain schemas, processing hooks, etc.


📦 Installation

pip install fetchez

Optional Extensions: To enable advanced vector boundary support (Shapefiles/GeoPackages for regions), install with the vector extras:

pip install fetchez[vector]

🐄 Quickstart

Fetch Copernicus topography and NOAA multibeam bathymetry for a specific bounding box in one command:

CLI

fetchez run -R loc:"Miami, FL" --global-hook audit copernicus multibeam

Or run a full processing pipeline from a YAML recipe:

fetchez recipes run recipes/my_dem_project.yaml

Python

import fetchez

# Fetch Electronic Nautical Chart data from NOAA
files = fetchez.get("charts", region=[-120, -118, 33, 34], hooks=['unzip', 'filename_filter:match=.000', 'audit'])

DEM Building with Globato

While Fetchez handles the data retrieval and point-streaming, its sister project Globato provides the multi_stack accumulators and multi-resolution interpolation engines needed to turn those streams into production-grade Digital Elevation Models. Check it out!


📚 Documentation

Would you like to know more? Check out our Official Documentation to learn about:

  • Modules & Bundles: Discover and learn about data fetchers.

  • The Python API: Build custom fetchers into your apps.

  • Recipes & YAML: Run custom workflows from a simple YAML configuration.

  • Hooks & Presets: Automate unzipping, filtering, and processing.

  • Domain Schemas: Enforce rigorous geospatial standards automatically.

  • Custom Plugins: Write your own data fetchers, processing hooks and extensions.


⚖ License

This project is licensed under the MIT License - see the LICENSE file for details.

Copyright (c) 2010-2026 Regents of the University of Colorado

Download files

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

Source Distribution

fetchez-0.6.12.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

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

fetchez-0.6.12-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

Details for the file fetchez-0.6.12.tar.gz.

File metadata

  • Download URL: fetchez-0.6.12.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for fetchez-0.6.12.tar.gz
Algorithm Hash digest
SHA256 c8f8ecff7a3ed4dde2a86871d228c5cf4aa3282fa0826db17394dd660d3efcad
MD5 ab28aba80be33f99dab155571eac35e9
BLAKE2b-256 c4f89eeafd510d34be996c30fc968a1edce993d4f2f62721aa4451e0a518de20

See more details on using hashes here.

Provenance

The following attestation bundles were made for fetchez-0.6.12.tar.gz:

Publisher: publish.yaml on continuous-dems/fetchez

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

File details

Details for the file fetchez-0.6.12-py3-none-any.whl.

File metadata

  • Download URL: fetchez-0.6.12-py3-none-any.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for fetchez-0.6.12-py3-none-any.whl
Algorithm Hash digest
SHA256 02b9c382ee75b06418dd86bc9f7b722bddceaa11c03da20689b3abaa95897e02
MD5 26ba2a4585b6ebce973874b94b8d81a3
BLAKE2b-256 90752c495604e9d0d6b46c5652c7c616c861c932862c9c40748d0043201db9c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for fetchez-0.6.12-py3-none-any.whl:

Publisher: publish.yaml on continuous-dems/fetchez

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

Release history Release notifications | RSS feed

0.8.5

2 files

0.8.4

2 files

0.8.2

2 files

0.8.1

2 files

0.8.0

2 files

0.7.0

2 files

0.6.13

2 files

This release

0.6.12 This release

2 files

0.6.11

2 files

0.6.10

2 files

0.6.9

2 files

0.6.8

2 files

0.6.7

2 files

0.6.6

2 files

0.6.5

2 files

0.6.4

2 files

0.6.3

2 files

0.6.2

2 files

0.6.1

2 files

0.6.0

2 files

0.5.6

2 files

0.5.5

2 files

0.5.4

2 files

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

0.4.3

2 files

0.4.2

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

Supported by

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