\

Pythonのdatetimeモジュールを使って日本時間を取得する方法はいくつかあります。以下にその方法を示します。

方法1: pytzの利用

datetime.datetime.now()の引数にpytz.timezone()で東京を指定します。

import datetime
import pytz

now = datetime.datetime.now(pytz.timezone('Asia/Tokyo'))

このコードを実行すると、現在の日本時間が取得できます。

方法2: UTCとの差分を計算

JSTとUTCの差分は+9時間なので、UTC時間を取得して+9時間します。

import datetime

# JSTとUTCの差分
DIFF_JST_FROM_UTC = 9

now = datetime.datetime.utcnow() + datetime.timedelta(hours=DIFF_JST_FROM_UTC)

このコードも現在の日本時間を取得します。

方法3: 文字列からの変換

文字列の日付(標準時間)を日本時間に直す方法もあります。

import datetime

# 元の日付(標準時間)
hiduke = '25/Aug/2020 11:01:52'

# 1. 日付型に変換
hiduke = datetime.datetime.strptime(hiduke, '%d/%b/%Y %H:%M:%S')

# 2. タイムゾーンの情報を付与(ここではUTC)
hiduke = hiduke.replace(tzinfo=datetime.timezone.utc)

# 3. タイムゾーンを日本時間に変換 (+9時間)
hiduke = hiduke.astimezone(datetime.timezone(datetime.timedelta(hours=+9)))

# 4. タイムゾーン表記を消去
hiduke = hiduke.replace(tzinfo=None)

以上の方法を使えば、Pythonのdatetimeモジュールを使って日本時間を確実に取得することができます。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です