Utilities

API shared by all modules.

BaseClient

The client class all aionasa API clients inherit from.

class aionasa.BaseClient(api_key='DEMO_KEY', session=None, rate_limiter=None, timeout=None)

Base class for NASA API clients.

Asset

Base class for an image asset at a URL.

class aionasa.Asset(client, url, filename)

Generic class representing a file asset URL.

await read(url=None)

Downloads the file associated with this Asset.

Parameters

url (str) – The URL to download the asset from, for subclasses with multiple options.

Returns

The file, downloaded from the URL.

Return type

bytes

await save(path=None, url=None)

Downloads the file associated with this Asset and saves to the requested path.

Parameters
  • url (str) – The URL to download the asset from, for subclasses with multiple options.

  • path – The file path at which to save the file. If None, saves the image to the working directory using the filename from the asset url.

RateLimiter

Class used internally by aionasa API clients to follow NASA API rate limits.

class aionasa.RateLimiter(limit, _repr=None)

Class that handles rate limit across the whole library. This is necessary to ensure observation of rate limits even if multiple API endpoints are being used.

property remaining

The number of requests remaining. Starts at the total request count specified on initialization and updates on each API request.

Type

int

Miscellaneous utilities