60 lines
1.7 KiB
Python
60 lines
1.7 KiB
Python
import os
|
|
import sys
|
|
import time
|
|
from dotenv import load_dotenv
|
|
|
|
# 프로젝트 루트 기준으로 .env 위치 지정
|
|
BASE_DIR = getattr(sys, '_MEIPASS', os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
|
|
ENV_PATH = os.path.join(BASE_DIR, '.env')
|
|
load_dotenv(dotenv_path=ENV_PATH)
|
|
|
|
# ✅ 타임존 설정
|
|
TZ = os.getenv("TZ", "Asia/Seoul")
|
|
os.environ["TZ"] = TZ
|
|
try:
|
|
time.tzset()
|
|
except AttributeError:
|
|
pass
|
|
|
|
try:
|
|
time.tzset()
|
|
except AttributeError:
|
|
pass
|
|
|
|
def parse_bool(value):
|
|
if isinstance(value, bool):
|
|
return value
|
|
return str(value).lower() in ('true', '1', 'yes')
|
|
|
|
def parse_list(value):
|
|
if not value:
|
|
return []
|
|
return [v.strip() for v in value.split(',') if v.strip()]
|
|
|
|
PLACE_IDS = parse_list(os.getenv("PLACE_IDS", ""))
|
|
BIZ_ID = parse_list(os.getenv("BIZ_ID", ""))
|
|
MAX_REVIEWS = int(os.getenv("MAX_REVIEWS", "100"))
|
|
|
|
NAVER_ID = os.getenv("NAVER_ID", "")
|
|
NAVER_PW = os.getenv("NAVER_PW", "")
|
|
|
|
MESSAGE_PLATFORMS = parse_list(os.getenv("MESSAGE_PLATFORMS", ""))
|
|
|
|
MATTERMOST_URL = os.getenv("MATTERMOST_URL", "")
|
|
MATTERMOST_WEBHOOK_URL = os.getenv("MATTERMOST_WEBHOOK_URL", "")
|
|
MATTERMOST_CHANNEL_ID = os.getenv("MATTERMOST_CHANNEL_ID", "")
|
|
MATTERMOST_BOT_TOKEN = os.getenv("MATTERMOST_BOT_TOKEN", "")
|
|
|
|
Synology_CHAT_WEBHOOK_URL = os.getenv("Synology_CHAT_WEBHOOK_URL", "")
|
|
|
|
TELEGRAM_BOT_TOKEN = os.getenv("TELEGRAM_BOT_TOKEN", "")
|
|
TELEGRAM_CHAT_ID = os.getenv("TELEGRAM_CHAT_ID", "")
|
|
|
|
HEADLESS = parse_bool(os.getenv("HEADLESS", "True"))
|
|
DEBUG = parse_bool(os.getenv("DEBUG", "False"))
|
|
|
|
START_DATE = os.getenv("START_DATE", "2025-07-01")
|
|
END_DATE = os.getenv("END_DATE", "2025-07-10")
|
|
|
|
COOKIE_FILE = os.getenv("COOKIE_FILE", os.path.join(os.path.dirname(__file__), '..', 'data', 'naver_cookies.pkl'))
|