Metadata-Version: 2.4
Name: comci
Version: 0.2.0
Summary: Comci.net 시간표 API 비공식 클라이언트
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: requests>=2.28.0

# Comci.net 시간표 API 클라이언트

컴시간(comci.net) 비공식 API를 사용하여 학교 검색 및 시간표 조회를 할 수 있는 Python 모듈입니다.

## 설치

```bash
pip install -r requirements.txt
```

## 사용법

### 1. 학교 검색 (지역, 학교명, 학교코드)

```python
from comci import search_schools

# "신송" 검색
schools = search_schools("신송")
for s in schools:
    print(s["region"], s["school_name"], s["school_code"])
# 인천 신송중학교 49654
# 인천 신송고등학교 51825
```

### 2. 특정 학년/반 시간표 조회

```python
from comci import get_timetable

# 1학년 1반 시간표 (정리.md 반환 구조)
timetable = get_timetable(49654, grade=1, class_num=1)
# {"월": [...], "화": [...], "수": [...], "목": [...], "금": [...]}
```

### 3. 전체 학년/반 시간표 조회

```python
# 학년, 반 미지정 시 전체
timetable = get_timetable(49654)
# {"1학년 1반": {...}, "1학년 2반": {...}, ...}
```

### 4. 검색 후 바로 시간표 조회

```python
from comci import search_and_get_timetable

timetable = search_and_get_timetable("신송", school_index=0, grade=1, class_num=1)
```

## 프로젝트 구조

```
comci/
├── __init__.py      # 패키지 진입점
├── config.py        # API URL, 상수
├── school_search.py # 학교 검색
├── timetable.py     # 시간표 API 및 파싱
└── client.py        # 통합 클라이언트
```

## 예시 실행

```bash
python example_usage.py
```

## 시간표 데이터 구조

각 요일별 리스트는 교시(1~8) 순서이며, 각 항목은:

```python
{
    "period": 1,        # 교시
    "time": "08:40",    # 시간
    "subject": "국어",  # 과목
    "teacher": "김선생", # 교사
    "room": "101",      # 강의실
    "changed": False    # 변경 수업 여부
}
```
