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
1.7 KiB
1.7 KiB
윈도우 개발 환경 가이드
1. 개요
이 프로젝트는 Windows와 NAS(리눅스) 환경 모두에서 동작하도록 구성되어 있습니다. NAS 배포 전 Windows 환경에서 테스트 및 데이터 복구를 수행할 수 있습니다.
2. 가상환경 (Windows)
가상환경은 저장소에 포함하지 않고 개발 PC마다 .venv로 생성합니다. 고정 의존성은 requirements.txt를 사용합니다.
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 변환에 유의하세요.
- 사용법:
python tools/check_db.py
3.2 로그 기반 데이터 복구 (recover_from_log.py)
cron.log 등의 로그 파일을 파싱하여 누락된 데이터를 DB에 다시 채워넣습니다.
clean_recover.py기능을 개선하여 포함했습니다.- 사용법:
python tools/recover_from_log.py
4. 실행
메인 크롤러 실행:
.\.venv\Scripts\python main.py
GUI 대시보드 실행 (테스트용):
.\.venv\Scripts\python crawler_gui.py
5. 배포 시 주의사항
crawler_manager.py의crawler_manager.db는 런타임에 생성되며 Git에서 제외합니다. 운영 상태 DB를 배포 파일로 덮어쓰지 마세요..env파일의 API 키가 만료되지 않았는지 확인하세요.