NasaSyncClient#

class nasa.NasaSyncClient[source]#

Bases: _BaseClient

A synchronous client to make request to the NASA Api.

Warning

If you’re planning to use this library in an asynchronous context you should use NasaAsyncClient.

New in version 0.0.1.

Parameters:

token (Optional[str]) – The token that should be used to connect to the NASA Api.

property http_client: HTTPClient#

The HTTPClient linked to the NasaSyncClient object.

Type:

HTTPClient

get_astronomy_picture(date: datetime.datetime | str | None = None) AstronomyPicture[source]#

Fetch an AstronomyPicture of a given date. If date is not provided returns the todays’ astronomy picture.

Parameters:

date (Optional[Union[datetime.datetime, str]]) – If not provided defaults to todays’ date.

Raises:

ValueError – The date doesn’t follows the YYYY-mm-dd date format.

Returns:

An astronomy picture.

Return type:

AstronomyPicture

get_range_astronomy_pictures(start_date: datetime.datetime | str, end_date: datetime.datetime | str | None = None) list[AstronomyPicture][source]#

Fetch multiple images with a given date range and return a list of AstronomyPicture.

Parameters:
  • start_date (Union[datetime.datetime, str]) – The start date. If provided as string it must follow the YYYY-mm-dd date format.

  • end_date (Optional[Union[datetime.datetime, str]]) – The end date. If provided as string it must follow the YYYY-mm-dd date format. If not provided defaults to todays’ date.

Returns:

A list of astronomy pictures for the required date range.

Return type:

List[AstronomyPicture]

get_gen_astronomy_pictures(start_date: datetime.datetime | str, end_date: datetime.datetime | str | None = None) Generator[AstronomyPicture, None, None][source]#

Fetch multiple images with a given date range and return a generator of AstronomyPicture.

Parameters:
  • start_date (Union[datetime.datetime, str]) – The start date. If provided as string it must follow the YYYY-mm-dd date format.

  • end_date (Optional[Union[datetime.datetime, str]]) – The end date. If provided as string it must follow the YYYY-mm-dd date format. If not provided defaults to todays’ date.

Yields:

AstronomyPicture

get_rand_astronomy_pictures(count: int = 1) list[AstronomyPicture][source]#

Fetch a random number of astronomy pictures.

Parameters:

count (int) – The number of random astronomy pictures to fetch. Must be between 1 and 100 (both inclusive).

Returns:

A list of random astronomy pictures.

Return type:

List[AstronomyPicture]

get_epic_images(date: datetime.datetime | None = None, *, image_type: EpicImageType = EpicImageType.natural) list[EpicImage][source]#

Fetch earth images from the EPIC endpoint.

New in version 0.0.1.

Parameters:
  • date (Optional[datetime.datetime]) – If not provided fetchs the default EpicImages returned by the Nasa API.

  • image_type (EpicImageType) – Defaults to EpicImageType.natural.

Return type:

list[EpicImage] Returns the requested epic images.