Some checks are pending
CI / Crawler (Python ${{ matrix.python-version }}) (3.10) (push) Waiting to run
CI / Crawler (Python ${{ matrix.python-version }}) (3.11) (push) Waiting to run
CI / API (Python 3.11) (push) Waiting to run
CI / Database migration (push) Waiting to run
CI / App web build (Node 20) (push) Waiting to run
49 lines
1.7 KiB
Markdown
49 lines
1.7 KiB
Markdown
|
|
# 윈도우 개발 환경 가이드
|
|
|
|
## 1. 개요
|
|
이 프로젝트는 Windows와 NAS(리눅스) 환경 모두에서 동작하도록 구성되어 있습니다.
|
|
NAS 배포 전 Windows 환경에서 테스트 및 데이터 복구를 수행할 수 있습니다.
|
|
|
|
## 2. 가상환경 (Windows)
|
|
가상환경은 저장소에 포함하지 않고 개발 PC마다 `.venv`로 생성합니다. 고정 의존성은 `requirements.txt`를 사용합니다.
|
|
|
|
```powershell
|
|
python -m venv .venv
|
|
.\.venv\Scripts\python -m pip install -r requirements.txt
|
|
.\.venv\Scripts\python -m unittest discover -s tests -p "test_*.py" -v
|
|
```
|
|
|
|
## 3. 개발 도구 (tools 폴더)
|
|
`tools/` 폴더에는 데이터 검증 및 복구를 위한 유틸리티 스크립트가 포함되어 있습니다.
|
|
|
|
### 3.1 DB 데이터 조회 (check_db.py)
|
|
특정 시간대의 Supabase 데이터가 정상적으로 저장되었는지 확인합니다.
|
|
- UTC 기준으로 조회하므로 KST 변환에 유의하세요.
|
|
- 사용법:
|
|
```powershell
|
|
python tools/check_db.py
|
|
```
|
|
|
|
### 3.2 로그 기반 데이터 복구 (recover_from_log.py)
|
|
`cron.log` 등의 로그 파일을 파싱하여 누락된 데이터를 DB에 다시 채워넣습니다.
|
|
- `clean_recover.py` 기능을 개선하여 포함했습니다.
|
|
- 사용법:
|
|
```powershell
|
|
python tools/recover_from_log.py
|
|
```
|
|
|
|
## 4. 실행
|
|
메인 크롤러 실행:
|
|
```powershell
|
|
.\.venv\Scripts\python main.py
|
|
```
|
|
GUI 대시보드 실행 (테스트용):
|
|
```powershell
|
|
.\.venv\Scripts\python crawler_gui.py
|
|
```
|
|
|
|
## 5. 배포 시 주의사항
|
|
- `crawler_manager.py`의 `crawler_manager.db`는 런타임에 생성되며 Git에서 제외합니다. 운영 상태 DB를 배포 파일로 덮어쓰지 마세요.
|
|
- `.env` 파일의 API 키가 만료되지 않았는지 확인하세요.
|