프로젝트 소개
GetCourse Downloader는 Windows 10/11용 무료 오픈소스 비디오, 강의, 코스 다운로더로, GetCourse 플랫폼에서 콘텐츠를 받을 수 있습니다. 이 프로그램은 사용 가능한 코스와 강의를 자동으로 가져오고, 원하는 비디오와 화질을 선택한 뒤 MP4 파일로 다운로드합니다.
## 기능
- 📚 **전체 코스** — 사용 가능한 코스와 강의 자동 가져오기
- 🎬 **한 번에 여러 비디오** — 다운로드 전에 원하는 강의 선택
- 🎞️ **MP4 파일 생성** — HLS 스트림을 자동으로 비디오 파일로 변환
- 🎚️ **화질 선택** — 각 비디오에 대해 사용 가능한 화질 선택
- 📂 **폴더 구조** — 코스와 강의가 디스크에 자동으로 정리됨
- 🔐 **Firefox 인증** — 별도 브라우저 프로필에서 로그인 수행
- 🔄 **안정적인 다운로드** — 일시적 오류 시 세그먼트 재시도
- 🖥️ **Windows EXE 포함** — Python, Firefox, FFmpeg가 이미 포함됨
## GetCourse 비디오 다운로드 방법
1. GitHub Releases에서 최신 버전의 GetCourse Downloader를 다운로드합니다.
2. ZIP 파일을 별도 폴더에 압축 해제합니다.
3. `GetCourseVideoDownloader.exe`를 실행합니다.
4. 코스 또는 강의 목록 페이지 링크를 붙여넣습니다.
5. 열린 Firefox에서 GetCourse 계정에 로그인합니다.
6. 원하는 강의와 비디오 화질을 선택합니다.
7. 저장할 폴더를 선택합니다.
8. **"선택 항목 다운로드"** 버튼을 클릭합니다.
완성된 비디오는 컴퓨터에 MP4 형식으로 저장됩니다.
## 개발자용
### 소스 코드에서 실행
Windows, Python 3.12+, uv가 필요합니다.
```powershell
git clone https://github.com/markpekun/getcourse-downloader.git
cd getcourse-downloader
uv sync --locked --group dev
uv run playwright install firefox
uv run getcourse-downloader
```
품질 검사:
```powershell
uv run ruff check src tests main.py
uv run ruff format --check src tests main.py
uv run mypy src main.py
uv run pytest
```
### EXE 빌드
```powershell
.\build.ps1
```
이 스크립트는 `uv.lock`에서 의존성을 동기화하고, Firefox와 FFmpeg를 확인하며, 앱을 빌드하고, worker 스모크 테스트를 수행한 후 다음 파일을 생성합니다:
```text
dist/GetCourseVideoDownloader-win-x64.zip
dist/GetCourseVideoDownloader-win-x64.zip.sha256
```
## 아키텍처
이 프로젝트는 ports & adapters 패턴을 사용하는 모듈형 모놀리스로 구성되어 있습니다:
```text
Flet / CLI -> application use cases -> domain
^
Playwright / HLS / FFmpeg / JSON adapters
```
자세한 설명은 ARCHITECTURE.md에 있습니다.
## 라이선스
MIT. 문의: Telegram @No_Resp_404
## 참고 사항
현재 활발히 수정 중이며, 빌드에 버그가 있어 인증용 브라우저가 실행되지 않는 문제가 있습니다. 또한 보호된 비디오 다운로드 기능을 개발 중입니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.