Python Japanese holidays library based on static data published by Cabinet Office, Government of Japan
Project description
python-shukujitsu
Python Japanese holidays library based on static data published by Cabinet Office, Government of Japan
Important notices
- This python-shukujitsu package covers only holidays in Japan from 1955 to 2025; will expand to holidays in 2026 in February 2025.
- This python-shukujitsu package has ZERO relation to the Government of Japan - NEVER EVER assume any authorization as this is just a personal project.
- The signature key 8A124CD64688ABCC was expired Mon Nov 21 11:31:15 2022 UTC; please file an issue if you hit troubles around DEB/RPM packages due to the expiry.
Installation
pip3 install python-shukujitsu
Usage
Play the dict-like object.
import shukujitsu
jp_holidays = shukujitsu.Japan()
# or:
# jp_holidays = shukujitsu.JP()
# or:
# jp_holidays = shukujitsu.CountryHoliday('JP')
from datetime import date
date(2020, 7, 24) in jp_holidays # True
date(2019, 7, 24) in jp_holidays # False
# The dict-like object also accepts misc. date(time)-like strings
# and int/float representing a Unix timestamp
'2014-01-01' in jp_holidays # True
'1/1/2014' in jp_holidays # True
1388597445 in jp_holidays # True
jp_holidays.get('2014-01-01') # "元日"
jp_holidays['2014-01-01': '2014-01-03'] # [date(2014, 1, 1)]
Command-Line interface
shukujitsu
command is bundled.
$ shukujitsu --help # or python3 -m shukujitsu --help
usage: shukujitsu [-h] [-i] [-n] [-V] [DATE ...]
Select Japanese holidays from 1955 to 2024
positional arguments:
DATE date to be examined
options:
-h, --help show this help message and exit
-i, --invert-match select non-holidays
-n, --holiday-name output holiday name instead
-V, --version display version information and exit
With no DATE, read standard input. Exit status is 0 if any date is selected, 1 otherwise.
Pass any dates through command-line arguments or STDIN.
$ # With logical operators
$ shukujitsu 1/1/2020 && echo Holiday found || echo Holiday not found
1/1/2020
Holiday found
$ # Select holidays
$ cat <<EOF | shukujitsu > holidays.txt
> 2020-05-02
> 2020-05-03
> 2020-05-04
> 2020-05-05
> 2020-05-06
> 2020-05-07
> EOF
$ # Select holidays
$ shukujitsu 2020/7/22 2020/7/23 2020/7/24
2020/7/23
2020/7/24
$ # Output each holiday name
$ shukujitsu -n 2020/7/22 2020/7/23 2020/7/24
海の日
スポーツの日
$ # Select non-holidays
$ shukujitsu -i 2020/7/22 2020/7/23 2020/7/24
2020/7/22
Docker image
$ docker run -it sakuraiyouhei/shukujitsu --help
yum repository
$ sudo yum install -y curl
$ curl -fsSL https://sakurai-youhei.github.io/python-shukujitsu/rpm/python-shukujitsu.repo | sudo tee /etc/yum.repos.d/python-shukujitsu.repo
$ sudo yum install -y python-shukujitsu
$ shukujitsu --help
Note: There is one known issue in the RPM package as of 2023-02-04; https://github.com/sakurai-youhei/python-shukujitsu/issues/25
apt repository
$ sudo apt install -y curl gpg
$ curl -fsSL https://sakurai-youhei.github.io/python-shukujitsu/gpg | sudo apt-key add -
$ curl -fsSL https://sakurai-youhei.github.io/python-shukujitsu/deb/python-shukujitsu.list | sudo tee /etc/apt/sources.list.d/python-shukujitsu.list
$ sudo apt update
$ sudo apt install -y python-shukujitsu
$ shukujitsu --help
Source data
This python-shukujitsu package bundles the following source data, which is distributed by the Government of Japan under the CC BY compatible conditions according to 内閣府ホームページ利用規約.
- 2024年7月17日時点の 内閣府ホームページ で公開されていた「昭和30年(1955年)から令和7年(2025年)国民の祝日(csv形式:20KB)」( https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv )
- 2023年2月4日時点の 内閣府ホームページ で公開されていた「昭和30年(1955年)から令和6年(2024年)国民の祝日(csv形式:20KB)」( https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv )
- 2023年2月1日時点の 内閣府ホームページ で公開されていた「昭和30年(1955年)から令和6年(2024年)国民の祝日(csv形式:20KB)」( https://www8.cao.go.jp/chosei/shukujitsu/shukujitsu.csv )
- 2022年2月1日時点の 内閣府ホームページ で公開されていた「昭和30年(1955年)から令和5年(2023年)国民の祝日(csv形式:20KB)」( https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv )
- 2021年2月1日時点の 内閣府ホームページ で公開されていた「昭和30年(1955年)から令和4年(2022年)国民の祝日(csv形式:19KB)」( https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv )
- 2020年11月27日時点の 内閣府ホームページ で公開されていた「昭和30年(1955年)から令和3年(2021年)国民の祝日(csv形式:19KB)」( https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv )
- 2020年11月18日時点の 内閣府ホームページ で公開されていた「昭和30年(1955年)から令和3年(2021年)国民の祝日(csv形式:19KB)」( https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv )
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file python_shukujitsu-2024.7.17.post1.tar.gz
.
File metadata
- Download URL: python_shukujitsu-2024.7.17.post1.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
f79d8191d6b1f2fcad202441c31822ffe941fd47a035f8ae97e9f52e156315e8
|
|
MD5 |
f4b062c79e90fb228d197e1f6c941265
|
|
BLAKE2b-256 |
dc74b8a1b939e510a6012ebfc182feeeff246ec5f927499107de237c45e063ae
|
File details
Details for the file python_shukujitsu-2024.7.17.post1-py3-none-any.whl
.
File metadata
- Download URL: python_shukujitsu-2024.7.17.post1-py3-none-any.whl
- Upload date:
- Size: 48.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
0c452cf1a75dac30a94829310e9f3e73f2c0d1479b2e8de31e044235a0eaca78
|
|
MD5 |
d518018a3e41b5dc365b463adbececd2
|
|
BLAKE2b-256 |
70954fa38f6b6a5e0606ec263839f5d68d355cc707647719fe30b24bc141a84b
|