Cfgrib
python -m cfgrib selfcheck
See all hypercubes
import cgfrib
import xarray as xr
dss = cfgrib.open_datasets("f.grib")
ds = xr.open_dataset(file, engine="cfgrib", backend_kwargs={"errors": "raise"})
Write to grib
from cfgrib.xarray_to_grib import to_grib
to_grib(ds, "f.grib", grib_keys={'edition': 2})