herbie-data
Download numerical weather prediction GRIB2 model data.
What it is and what it does
Herbie is a Python interface to numerical weather prediction model data from NOAA (HRRR, GFS, RAP, GEFS, NAM, and others), ECMWF (IFS, AIFS), and additional sources. It abstracts away the complexity of locating and downloading GRIB2 files from multiple archives (NOMADS, AWS, Google Cloud, Azure) by automatically searching available sources and downloading either full files or subsets by variable. The package integrates tightly with xarray and pandas, allowing you to load downloaded data directly into analysis-ready formats.
Typical workflows involve creating a Herbie object with a date, model name, and product type, then either downloading raw GRIB2 files or reading specific variables directly into xarray Datasets. It includes a command-line interface for scripting and batch operations, plus built-in helpers for Cartopy-based mapping. The package is designed for researchers, meteorologists, and data scientists working with atmospheric forecasts—both for real-time operational use and historical analysis.
Use it for:
- Download high-resolution HRRR surface forecasts for regional weather analysis or nowcasting applications.
- Retrieve specific atmospheric variables (e.g., temperature at 850 mb) from global GFS forecasts for ensemble analysis.
- Batch-download multiple forecast hours across a date range for machine learning training on weather patterns.
- Access ECMWF IFS data for comparison with NOAA models in research or operational workflows.
- Extract point-specific data (e.g., at a weather station location) from GRIB2 files without processing entire grids.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Herbie downloads numerical weather prediction model data (GRIB2 files) from NOAA, ECMWF, and other sources, then loads it into xarray for analysis and visualization.
Yes. Herbie is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and solves a real problem for weather data workflows. Install friction is low and dependencies are standard scientific Python packages. Suitable for research, operational meteorology, and data science projects involving atmospheric forecasts.
Install
herbie-data on PyPI
pip
pip install herbie-datauv
uv add herbie-datapoetry
poetry add herbie-dataInstalling herbie-data
Before you install
Low friction install with a pure-Python wheel. Active maintenance (last commit 2026-06-07) and 780 repository stars. Eight runtime dependencies including numpy, pandas, xarray, and cfgrib—all standard scientific Python packages with broad ecosystem support.
License in practice
MIT License permits commercial and private use, modification, and redistribution with minimal restrictions. You may use this in proprietary projects provided you include the license text and copyright notice.
Quickstart
pip install herbie-data
from herbie import Herbie
H = Herbie('2021-01-01 12:00', model='hrrr', product='sfc', fxx=6)
temperature = H.xarray('TMP:2 m')
Requires Python 3.11 or later. Optional features (wgrib2 integration) require manual system installation of wgrib2.
Verify before relying
- Whether all 15+ supported weather models are equally well-maintained and documented.
- Performance characteristics when downloading large subsets or multiple forecast hours.
- Specific data latency and availability guarantees across different source providers.
- Whether Cartopy integration requires additional system dependencies beyond those listed.
Package facts
| License | MIT License Copyright (c) 2019-2024 Brian K. Blaylock Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.11) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 8 — cfgrib, eccodes, eccodeslib, numpy, pandas, pyproj, requests, xarray |
| Maintenance | actively maintained — 160 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 184,844/month — #10,023 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: herbie_data-2026.3.0-py3-none-any.whl
Keywords: GRIB2, HRRR, atmosphere, forecast, meteorology, weather, xarray
Tags
More Atmospheric Science packages
Albumentations applies image transformations to…
permissive · top 5,000 on PyPI
measurementProvides unit-aware measurement objects for…
permissive · top 5,000 on PyPI
chemicalsRetrieves and calculates chemical properties…
permissive · top 15,000 on PyPI
thermoThermo calculates temperature and…
permissive · top 15,000 on PyPI
cwltoolcwltool is the reference implementation of the…
permissive · top 15,000 on PyPI
MetPyMetPy provides tools for reading, visualizing,…
permissive · top 15,000 on PyPI
ecmwf-opendataDownloads ECMWF open meteorological data using…
permissive · top 15,000 on PyPI
atcf-data-parserParses a-deck forecast data from the Automated…
permissive · top 15,000 on PyPI
cfgribcfgrib maps GRIB meteorological data files to…
permissive · top 5,000 on PyPI
ecmwf-api-clientPython client for accessing ECMWF's IFS…
permissive · top 15,000 on PyPI
pygribReads and writes GRIB meteorological data files…
permissive · top 15,000 on PyPI
earthkit-meteoComputes meteorological quantities (potential…
permissive · top 15,000 on PyPI
simple-dwd-weatherforecastRetrieves hourly weather forecasts for the next…
permissive · top 15,000 on PyPI
AI-WQ-packageSupports participation in the ECMWF AI Weather…
permissive · top 15,000 on PyPI
pdbufrpdbufr reads BUFR (Binary Universal Form for…
permissive · top 15,000 on PyPI
open-radar-dataProvides a registry and download utility for…
permissive · top 15,000 on PyPI