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
Usage is similar to python-holidays package. But note that this python-shukujitsu package covers only holidays in Japan from the year 1955 to 2022 as of today.
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 Holiday class will also recognize strings of any format
# 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)]
Installation
pip3 install python-shukujitsu
Command-Line interface
shukujitsu
command becomes available by installing this python-shukujitsu package.
$ shukujitsu --help # or python3 -m shukujitsu --help
usage: shukujitsu [-h] [-i] [-n] [-V] [DATE ...]
Utility to match Japanese holidays from the year 1955 to 2021
positional arguments:
DATE date to be matched
optional arguments:
-h, --help show this help message and exit
-i, --invert-match select non-matching dates
-n, --holiday-name output holiday name instead
-V, --version display version information and exit
Exit status stays 0 if one or more dates are matched. Otherwise, it always goes 1.
One or some dates can be input to the command through command-line arguments or STDIN.
$ # You can start a conditional branch from shukujitsu command.
$ shukujitsu 2020-01-01 && echo This is a holiday || echo This is not a holiday
2020-01-01
This is a holiday
$ # You can also filter dates by using shukujitsu command.
$ cat <<EOF | shukujitsu > holidays.txt
> 2020-05-02
> 2020-05-03
> 2020-05-04
> 2020-05-05
> 2020-05-06
> 2020-05-07
> EOF
$ # You can check multiple dates at once.
$ shukujitsu 2020/7/22 2020/7/23 2020/7/24
2020/7/23
2020/7/24
$ # You can also check the name of each holiday.
$ shukujitsu -n 2020/7/22 2020/7/23 2020/7/24
海の日
スポーツの日
$ # You can also pick up non-holiday.
$ shukujitsu -i 2020/7/22 2020/7/23 2020/7/24
2020/7/22
Alternative ways
Docker
$ docker run -it sakuraiyouhei/shukujitsu --help
yum
$ 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
apt
$ 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
Important Notice
Source Data
This python-shukujitsu package bundles the following data. (Japanese - 本ライブラリは以下のデータを同梱しています。) The license of Source Data is CC BY compatible; The exact conditions are described at 内閣府ホームページ利用規約.
- 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)
Source Code
This python-shukujitsu package may contain a copy of and/or modified code from python-holidays package which is also licensed under MIT License.
Relation to the Government of Japan
Nothing - NEVER EVER imagine relation to Government of Japan. This is just a personal project.
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
Hashes for python-shukujitsu-2021.2.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 384f501decac9d7c2dcb46d3d280ed0e3903f85d2bae88c47387cce12eb27d90 |
|
MD5 | 920c557e83b676cc3f02c5a3a797a6bb |
|
BLAKE2b-256 | f2793cdfd528abde75b228ef7196a2d38811f36658bfc91d6e9b8178190d453f |
Hashes for python_shukujitsu-2021.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d2ca6a9616e3d73a38bd299087d454b9b0b2abc95c7fea1f0f982b9ceb55247 |
|
MD5 | c3e21678ea5b92c4b39aa3447e48b9b0 |
|
BLAKE2b-256 | adb29a87fabf42c1d0a65601202b51e773bc78d3bcfbd0df5378ec0371b954f3 |