Skip to content

hyperproc.archive

Source-derived reference

Generated from the current hyperproc 0.1.2 checkout.

Implementation: hyperproc/archive/__init__.py. Signatures, defaults, docstrings, and expandable source are extracted statically; the module is not imported or executed. Names beginning with _ are implementation details, not a stable public API.

Use the function signature as the authority for individual parameter defaults and return annotations. Original docstrings sometimes group parameter names or wrap return descriptions across lines; these descriptions are preserved rather than inferred or rewritten.

Exported entry points

Importable name Definition
hyperproc.archive.search hyperproc.archive.api.search
hyperproc.archive.download hyperproc.archive.api.download
hyperproc.archive.files hyperproc.archive.api.files
hyperproc.archive.describe hyperproc.archive.collections.describe
hyperproc.archive.credentials hyperproc.archive.api.credentials
hyperproc.archive.can_download hyperproc.archive.api.can_download
hyperproc.archive.Granule hyperproc.archive.results.Granule
hyperproc.archive.Results hyperproc.archive.results.Results
hyperproc.archive.COLLECTIONS hyperproc.archive.collections.COLLECTIONS
hyperproc.archive.ELSEWHERE hyperproc.archive.collections.ELSEWHERE
hyperproc.archive.BACKENDS hyperproc.archive.collections.BACKENDS
hyperproc.archive.Collection hyperproc.archive.collections.Collection
hyperproc.archive.resolve hyperproc.archive.collections.resolve
hyperproc.archive.search_map hyperproc.archive.interactive.search_map
hyperproc.archive.Map hyperproc.archive.interactive.Map

Find and fetch granules, so a workflow can start from a place and a date.

hyperproc.open reads a file you already have. This finds the file.

>>> hits = hp.search("EMIT", "L2A", bbox=(-121, 34, -119.8, 35.1),
...                  date=("2023-04-20", "2023-04-25"))
>>> hits
3 granules, 14.1 GB
>>> hp.download(hits[:1], "data/")

Three archives answer, picked by what you asked for:

  • NASA CMR for EMIT, PACE and AVIRIS-3/-5, over earthaccess. Downloads need a free Earthdata login (https://urs.earthdata.nasa.gov).
  • NEON's Data API for AOP flightlines. NEON publishes a site-month at a time, so :func:files opens one up into the flightlines inside. Downloads need a NEON API token (https://data.neonscience.org/myaccount), required since June 2026.
  • DLR's EOC Geoservice STAC for EnMAP and DESIS. Downloads need a free EOC account (https://sso.eoc.dlr.de/).

Searching all three is anonymous. PRISMA, Tanager, AVIRIS-NG and AVIRIS Classic are not searchable from here at all; asking for one raises with the address rather than returning an empty list. :func:describe prints the whole picture, and :func:hyperproc.search_map does it on a map you can draw on.

__getattr__(name)

Source code in hyperproc/archive/__init__.py
def __getattr__(name):
    # leafmap and ipyleaflet are a heavy optional extra; importing hyperproc
    # should not pay for them, so the map arrives only when it is asked for
    if name in ("Map", "search_map"):
        from hyperproc.archive import interactive
        return getattr(interactive, name)
    raise AttributeError(f"module {__name__!r} has no attribute {name!r}")