티그리스(Tigrison) 근태/휴가 조회 및 회의실 예약 자동화 데스크톱 애플리케이션입니다.
- 로그인 & 세션 관리: 티그리스 → SSO → 5240.cloud 세션 자동 확보, 아이디 기억하기
- 근태/휴가 조회: 날짜별 근태/휴가 현황 조회
- 회의실 예약: 로그인 후 회의실 목록 자동 조회, 단건/주간 반복 예약 지원
- 간편 UI: tkinter 기반 데스크톱 GUI
git clone https://github.com/Protomothis/auto-tigris.git
cd auto-tigris
python3 -m venv venv
source venv/bin/activate # Windows: .\venv\Scripts\activate
pip install -r requirements.txtpython main.py- 로그인 — 티그리스 아이디/비밀번호 입력 후 로그인 버튼 클릭
- 근태/휴가 조회 — 날짜 선택 후 조회
- 회의실 예약 — 단건 예약 또는 주간 반복 예약 설정 후 실행
pip install pyinstaller
./build.sh| OS | 결과물 |
|---|---|
| macOS | dist/auto-tigris.app |
| Windows | dist/auto-tigris/auto-tigris.exe |
| Linux | dist/auto-tigris/auto-tigris |
auto-tigris/
├── config/constants.py # 전역 상수 (URL, 헤더)
├── domain/
│ ├── entities/attendance.py # 근태 레코드 엔티티
│ ├── repositories/tigris_repository.py # 리포지토리 인터페이스
│ └── use_cases/fetch_attendance.py # 조회 유스케이스
├── infrastructure/
│ └── tigris/tigris_client.py # 티그리스 API 클라이언트 (로그인, 근태, 회의실)
├── application/
│ ├── services/attendance_service.py # 서비스 레이어
│ └── dtos/attendance_dto.py # DTO
├── presentation/
│ ├── views/main_window.py # GUI
│ └── controllers/attendance_controller.py
├── build.spec / build.sh # PyInstaller 빌드
└── main.py
| 구분 | 기술 |
|---|---|
| HTTP 클라이언트 | httpx (async) |
| HTML 파싱 | BeautifulSoup4 |
| GUI | tkinter |
| 빌드 | PyInstaller |
| 아키텍처 | Clean Architecture |
MIT