flaretool.holiday package

Submodules

flaretool.holiday.JapaneseHolidays module

flaretool.holiday.JapaneseHolidaysOnline module

flaretool.holiday.errors module

exception flaretool.holiday.errors.JapaneseHolidaysError(**kwargs)

Bases: FlareToolError

flaretool.holiday.models module

class flaretool.holiday.models.HolidaysResponseModel(*, title: str, author: str, version: str, status: bool, message: str, updated: datetime, supported: supported, count: int, holidays: dict[date, str] | None)

Bases: BaseDataModel

author: str
count: int
holidays: dict[date, str] | None
message: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

status: bool
supported: supported
title: str
updated: datetime
version: str
class flaretool.holiday.models.supported(*, from_date: date, to: date)

Bases: BaseDataModel

from_date: date
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

to_date: date

Module contents

class flaretool.holiday.JapaneseHolidays

Bases: object

日本の祝日を管理するクラス(オフライン版)

get_business_date_range(start_date: date, end_date: date) list[date]

指定期間内の営業日の一覧を取得

Parameters:
  • start_date (datetime.date) – 開始日

  • end_date (datetime.date) – 終了日

Returns:

日付のリスト

Return type:

list[datetime.date]

get_date_information(date: date) tuple

指定された日付から週番号、曜日、および祝日の名称を取得

Parameters:

date (datetime.date) – 日付

Returns:

週番号(int)(0-4)、曜日(str)、曜日(int)(0-6)、祝日の名称(str)のタプル

Return type:

tuple

get_first_business_day(date: date, days: int = 1) date

指定された月の営業日を取得(デフォルトは第1営業日)

Parameters:
  • date (datetime.date) – 日付

  • days (int) – 営業日数(デフォルトは1)

Returns:

営業日

Return type:

datetime.date

get_holiday_name(date: str | datetime | date) str | None

祝日名を取得

Parameters:

date (datetime or date or str) – 日時

Returns:

祝日名(祝日ではない場合はNone)

Return type:

str

get_holidays(date: str) list[tuple[str, datetime]]

祝日の一覧を取得

Parameters:

date (str) – 年 or 年月 の日時

Raises:

ValueError – 日時のフォーマットエラー

Returns:

祝日リスト

Return type:

list[tuple[str, datetime.datetime]]

Example

>>> get_holidays("2023")
>>> get_holidays("2023-01")
>>> get_holidays("2023/01")
>>> get_holidays("202301")
get_holidays_in_range(start_date: date, end_date: date) list[tuple[datetime, str]]

特定の期間内の祝日一覧を取得

Parameters:
  • start_date (datetime.date) – 開始日

  • end_date (datetime.date) – 終了日

Returns:

祝日一覧

Return type:

list[tuple[datetime.datetime, str]]

get_last_business_day(date: date) date

指定された月の最終営業日を取得

Parameters:

date (datetime.date) – 日付

Returns:

最終営業日

Return type:

datetime.date

static get_last_day(date: date) date

指定された月の最終日を取得

Parameters:

date (datetime.date) – 月を指定した日付

Returns:

最終日の日付オブジェクト

Return type:

datetime.date

get_rest_days_in_range(start_date: date, end_date: date) list[tuple[datetime, str]]

特定の期間内の休みの一覧を取得(土日含む)

Parameters:
  • start_date (datetime.date) – 開始日

  • end_date (datetime.date) – 終了日

Returns:

休日一覧

Return type:

list[tuple[datetime.datetime, str]]

is_additional_holiday(date: date) bool

追加休日チェック

Parameters:

date (datetime.date) – 日付

Returns:

追加休日の場合はTrue、そうでない場合はFalse

Return type:

bool

is_autumn_equinox(date: date) bool

秋分の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

秋分の日であればTrue、そうでなければFalse

Return type:

bool

is_childrens_day(date: date) bool

こどもの日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

こどもの日であればTrue、そうでなければFalse

Return type:

bool

is_coming_of_age_day(date: date) bool

成人の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

成人の日であればTrue、そうでなければFalse

Return type:

bool

is_constitution_day(date: date) bool

憲法記念日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

憲法記念日であればTrue、そうでなければFalse

Return type:

bool

is_culture_day(date: date) bool

文化の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

文化の日であればTrue、そうでなければFalse

Return type:

bool

is_emperors_birthday(date: date) bool

天皇誕生日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

天皇誕生日であればTrue、そうでなければFalse

Return type:

bool

is_foundation_day(date: date) bool

建国記念日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

建国記念日であればTrue、そうでなければFalse

Return type:

bool

is_greenery_day(date: date) bool

みどりの日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

みどりの日であればTrue、そうでなければFalse

Return type:

bool

is_health_and_sports_day(date: date) bool

スポーツの日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

スポーツの日であればTrue、そうでなければFalse

Return type:

bool

is_labour_thanksgiving_day(date: date) bool

勤労感謝の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

勤労感謝であればTrue、そうでなければFalse

Return type:

bool

is_marine_day(date: date) bool

海の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

海の日であればTrue、そうでなければFalse

Return type:

bool

is_mountain_day(date: date) bool

山の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

山の日であればTrue、そうでなければFalse

Return type:

bool

is_national_holiday(date: date) bool

国民の休日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

国民の休日であればTrue、そうでなければFalse

Return type:

bool

is_new_year(date: date) bool

元日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

元日であればTrue、そうでなければFalse

Return type:

bool

is_respect_for_the_aged_day(date: date) bool

敬老の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

敬老の日であればTrue、そうでなければFalse

Return type:

bool

is_showa_day(date: date) bool

昭和の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

昭和の日であればTrue、そうでなければFalse

Return type:

bool

is_spring_equinox(date: date) bool

春分の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

春分の日であればTrue、そうでなければFalse

Return type:

bool

is_transfer_holiday(date: date) bool

振替休日チェック

Parameters:

date (datetime.date) – 日付

Returns:

振替休日の場合はTrue、そうでない場合はFalse

Return type:

bool

print_calendar(date: date)

カレンダーを出力

Parameters:

date (datetime.date) – 対象年月

set_additional_holiday(name: str, date: date)

独自の休日を追加

Parameters:
  • name (str) – 休日名

  • date (datetime.date) – 休日の日付

static to_date(date: str | datetime | date) date

日付文字列をdateオブジェクトに変換します

Parameters:

date (str or datetime or date) – 変換する日付文字列。

Returns:

変換されたdateオブジェクト。

Return type:

date

Raises:

ValueError – サポートされていない日付形式の場合に発生します。

week_day(date: date, week: int, weekday: int) date

指定された日付の週と曜日に該当する日付を取得

Parameters:
  • date (datetime.date) – 日付

  • week (int) – 週 (1から5)

  • weekday (int) – 曜日 (1から7, 月曜日を1とする)

Returns:

週と曜日に該当する日付

Return type:

datetime.date

class flaretool.holiday.JapaneseHolidaysOnline

Bases: JapaneseHolidays

日本の祝日を管理するクラス(オンライン版)

get_holiday_name(date: str | datetime | date) str | None

祝日名を取得

Parameters:

date (datetime or date or str) – 日時

Returns:

祝日名(祝日ではない場合はNone)

Return type:

str

is_autumn_equinox(date: date) bool

秋分の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

秋分の日であればTrue、そうでなければFalse

Return type:

bool

is_childrens_day(date: date) bool

こどもの日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

こどもの日であればTrue、そうでなければFalse

Return type:

bool

is_coming_of_age_day(date: date) bool

成人の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

成人の日であればTrue、そうでなければFalse

Return type:

bool

is_constitution_day(date: date) bool

憲法記念日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

憲法記念日であればTrue、そうでなければFalse

Return type:

bool

is_culture_day(date: date) bool

文化の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

文化の日であればTrue、そうでなければFalse

Return type:

bool

is_emperors_birthday(date: date) bool

天皇誕生日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

天皇誕生日であればTrue、そうでなければFalse

Return type:

bool

is_foundation_day(date: date) bool

建国記念日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

建国記念日であればTrue、そうでなければFalse

Return type:

bool

is_greenery_day(date: date) bool

みどりの日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

みどりの日であればTrue、そうでなければFalse

Return type:

bool

is_health_and_sports_day(date: date) bool

スポーツの日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

スポーツの日であればTrue、そうでなければFalse

Return type:

bool

is_labour_thanksgiving_day(date: date) bool

勤労感謝の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

勤労感謝であればTrue、そうでなければFalse

Return type:

bool

is_marine_day(date: date) bool

海の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

海の日であればTrue、そうでなければFalse

Return type:

bool

is_mountain_day(date: date) bool

山の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

山の日であればTrue、そうでなければFalse

Return type:

bool

is_new_year(date: date) bool

元日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

元日であればTrue、そうでなければFalse

Return type:

bool

is_respect_for_the_aged_day(date: date) bool

敬老の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

敬老の日であればTrue、そうでなければFalse

Return type:

bool

is_showa_day(date: date) bool

昭和の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

昭和の日であればTrue、そうでなければFalse

Return type:

bool

is_spring_equinox(date: date) bool

春分の日の判定

Parameters:

date (datetime.date) – 判定する日付

Returns:

春分の日であればTrue、そうでなければFalse

Return type:

bool

show_info()

祝日の対応情報を表示