LICENSE
README.md
pyproject.toml
src/bili_course/__init__.py
src/bili_course/__main__.py
src/bili_course/_version.py
src/bili_course/cli.py
src/bili_course/config.py
src/bili_course/errors.py
src/bili_course/logging.py
src/bili_course/py.typed
src/bili_course/service.py
src/bili_course.egg-info/PKG-INFO
src/bili_course.egg-info/SOURCES.txt
src/bili_course.egg-info/dependency_links.txt
src/bili_course.egg-info/entry_points.txt
src/bili_course.egg-info/requires.txt
src/bili_course.egg-info/top_level.txt
src/bili_course/api/__init__.py
src/bili_course/api/main.py
src/bili_course/bilibili/__init__.py
src/bili_course/bilibili/auth.py
src/bili_course/bilibili/course.py
src/bili_course/bilibili/http.py
src/bili_course/bilibili/selector.py
src/bili_course/bilibili/subtitle.py
src/bili_course/bilibili/urls.py
src/bili_course/bilibili/video.py
src/bili_course/bilibili/wbi.py
src/bili_course/browser/__init__.py
src/bili_course/browser/playwright_client.py
src/bili_course/browser/subtitle_fallback.py
src/bili_course/models/__init__.py
src/bili_course/models/course.py
src/bili_course/models/enums.py
src/bili_course/models/subtitle.py
src/bili_course/models/task.py
src/bili_course/models/video.py
src/bili_course/pipeline/__init__.py
src/bili_course/pipeline/downloader.py
src/bili_course/pipeline/exporter.py
src/bili_course/pipeline/importer.py
src/bili_course/pipeline/normalizer.py
src/bili_course/pipeline/tasks.py
src/bili_course/storage/__init__.py
src/bili_course/storage/cache.py
src/bili_course/storage/database.py
src/bili_course/storage/filesystem.py
src/bili_course/storage/repository.py