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 2021 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 code 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 is based on the following data. (Japanese - 本ライブラリは以下のデータを加工して作成しています。) The license of Source Data is CC BY compatible; The exact conditions are described at 内閣府ホームページ利用規約.
- 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-2020.11.27.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 22208ceac08a0194b8963c9cb122880dd13aa42a22651e78842b4a5088810751 |
|
MD5 | 95374b79132a016990788988e012b8b7 |
|
BLAKE2b-256 | a958194a99803697fb25c8d78cf4949c78b6f1fc8ce75cf8f0b5a66977eea72f |
Hashes for python_shukujitsu-2020.11.27-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 462a840cd77cc7cffbf6857b53fea299edbce1515bf3f01ad7895f94ab8af29f |
|
MD5 | f113243256317755e939e8701f436930 |
|
BLAKE2b-256 | 7c1dffecd29f389021f3a500b411984107a4389d21df6b388194db21f3ce7a19 |