eorzeaenvというff14ユーザーなら嬉しいライブラリを発見しました
こちらのウェブサイトに、虹が出る時刻を予測できるプログラムがあったので、
時刻を「年、月、日、時、分」を入れて表示できるプログラムにしてみました
とりあえず光の戦士のみなさまはこれを入れましょう
pip install eorzeaenv
rainbow.py
from datetime import datetime, timezone
from zoneinfo import ZoneInfo
from EorzeaEnv import EorzeaPlaceName, EorzeaRainbow, EorzeaTime, EorzeaWeather
rainbow_times: list[str] = []
jst = ZoneInfo("Asia/Tokyo")
place = EorzeaPlaceName("東ラノシア") # ()内を変えると別の場所の時刻が出ます
the_rainbow = EorzeaRainbow(place_name=place)
for t in EorzeaTime.weather_period(step='inf'):
the_rainbow.append(t, EorzeaWeather.forecast(place, t, raw=True))
if the_rainbow.is_appear:
# UNIX タイムスタンプを JST に変換してフォーマット
jst_time = datetime.fromtimestamp(t.get_unix_time(), jst)
formatted_time = f"{jst_time.year}年{jst_time.month}月{jst_time.day}日 {jst_time.hour}時{jst_time.minute}分"
rainbow_times.append(formatted_time)
if len(rainbow_times) == 5: #ここの値を変えると虹が出る日付をたくさん表示したりできます
break
for time in rainbow_times:
print(time)
出力結果です
2024年4月23日 19時16分
2024年4月25日 3時56分
2024年4月25日 5時6分
2024年4月25日 7時26分
2024年4月25日 9時46分