API Documentation#

snowday_calculator package.

This module provides functions and classes to predict the chance of a snow day based on zipcode, snow days, and school type.

class snowday_calculator.Prediction#

Bases: object

Class to hold and retrieve snow day prediction chances.

chance(day)#

Retrieve the prediction chance for a specified day.

Parameters:

day (datetime.datetime) – The day for which to retrieve the chance.

Returns:

The chance value if available; otherwise, None.

Return type:

float or None

chance_tmrw()#

Retrieve the prediction chance for tomorrow.

Returns:

Tomorrow’s chance value if available; otherwise, None.

Return type:

float or None

chance_today()#

Retrieve the prediction chance for today.

Returns:

Today’s chance value if available; otherwise, None.

Return type:

float or None

class snowday_calculator.SchoolType#

Bases: object

Constants representing different school types for prediction calculations.

BOARDING = 1#
PRIVATE = -0.4#
PUBLIC = 0#
RURAL_PUBLIC = -0.4#
URBAN_PUBLIC = 0.4#
snowday_calculator.datetime_to_daycode(day)#

Convert a datetime object to a daycode string in the format YYYYMMDD.

Parameters:

day (datetime.datetime) – The datetime object to convert.

Returns:

The daycode in the format “YYYYMMDD”.

Return type:

str

snowday_calculator.predict(zipcode, snowdays=0, schooltype=0)#

Predict the chance of a snow day.

Makes an HTTP request to the snow day prediction service and parses the JavaScript response to extract prediction chances.

Parameters:
  • zipcode (str) – The zipcode for which to predict.

  • snowdays (int, optional) – Number of snow days to consider. Defaults to 0.

  • schooltype (int, optional) – School type constant from SchoolType. Defaults to SchoolType.PUBLIC.

Returns:

An instance of Prediction containing the parsed chances.

Return type:

Prediction