.env파일은 절대 Git에 커밋하지 말 것- 노출된 토큰은 즉시 폐기(rotate)할 것
- AWS 키는 팀 외부에 공유 금지
이 저장소는 환경변수(.env) 초기화 + raw_data JSON S3 업로드 구조를 빠르게 시작하기 위한 기본 템플릿입니다.
.
├── .env # 로컬에서만 생성 (커밋 금지)
├── .env.example # 키 이름/기본값 템플릿
├── .gitignore
├── README.md
├── requirements.txt
├── companies.csv # 샘플(커밋 가능)
├── docs/
│ ├── DOPPLER_GUIDE.md
│ └── NAMING_CONVENTION.md
├── scripts/
│ ├── download_env.sh
│ └── upload_raw_data.py
├── raw_data/ # 로컬 원본 JSON 저장 경로 (커밋 금지)
└── output/ # 가공 CSV 결과 경로 (커밋 금지 기본 정책)
Python 3.10 이상 기준입니다.
python -m venv venv
source venv/bin/activate # mac/linux
venv\Scripts\activate # windows
pip install -r requirements.txt토큰은 공유/캡처 금지입니다.
export DOPPLER_TOKEN="여기에_새토큰"
bash scripts/download_env.sh$env:DOPPLER_TOKEN="여기에_새토큰"
bash scripts/download_env.shWindows에서
bash가 없다면 Git Bash 또는 WSL에서 실행하세요.
companies.csv 컬럼 스펙:
stock_code,corp_name,label,gics_sectorgics_sector는 아래 문자열과 완전히 동일해야 합니다.
Energy
Materials
Industrials
Consumer Discretionary
Consumer Staples
Health Care
Financials
Information Technology
Communication Services
Utilities
Real Estate
로컬 원본 JSON 형식:
{종목코드}_{연도}_{분기}_{재무제표구분}.json- 분기:
Q1,H1,Q3,ANNUAL - 재무제표구분:
CFS,OFS
예시:
019440_2023_Q1_CFS.json019440_2023_H1_CFS.json019440_2023_Q3_OFS.json019440_2023_ANNUAL_CFS.json
실제 업로드 없이 경로만 확인합니다.
python scripts/upload_raw_data.py --dry-runpython scripts/upload_raw_data.py --sector Financials --sector Energy기본은 CFS 우선이며, --use-ofs를 주면 CFS가 없는 경우 OFS 업로드를 허용합니다.
python scripts/upload_raw_data.py --use-ofsS3 key 규칙:
data_collection/{GICS섹터}/{종목코드}_{연도}_{분기}.json
최종 URI 예시:
s3://kw0ss-raw-data-s3/data_collection/Financials/105560_2023_Q1.json
scripts/upload_raw_data.py:
argparse옵션 제공:--sector,--dry-run,--use-ofs- 기본 섹터:
Financials,Consumer Staples,Energy,Utilities,Real Estate companies.csv를 읽어 섹터 필터링raw_data에서 규칙 일치 파일만 선별- S3 업로드 시
Content-Type: application/json지정 - 성공 시
Uploaded: s3://bucket/key출력 - 실패 시 구조화 에러 로그 출력
- Doppler 상세 가이드:
docs/DOPPLER_GUIDE.md - 네이밍 규칙 원문:
docs/NAMING_CONVENTION.md