diff --git a/README.md b/README.md index 57a8f97..13cd987 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,10 @@ FlaskFarm용 범용 다운로드 매니저 플러그인입니다. 여러 다운로더 플러그인(YouTube, Anime 등)의 다운로드 요청을 통합 관리하고 큐(Queue)를 제공합니다. +## v0.2.17 변경사항 (2026-01-08) +- **yt-dlp HTTP 헤더 지원**: `options.headers` 딕셔너리에서 `--add-header` 인자를 생성하여 Referer/User-Agent 등 커스텀 헤더를 yt-dlp에 전달합니다. +- **Linkkf CDN 리다이렉트 해결**: Referer 헤더 없이 m3u8 URL 접근 시 Google Cloud로 리다이렉트되던 문제 수정. + ## v0.2.15 변경사항 (2026-01-08) - **삭제 로직 버그 수정**: 메모리에 실시간으로 로드된 다운로드 항목을 삭제할 때, 메모리에서 먼저 제거되어 DB 데이터가 남던 순서 오류를 수정했습니다. diff --git a/downloader/__init__.py b/downloader/__init__.py index 9aee1cc..dfb202e 100644 --- a/downloader/__init__.py +++ b/downloader/__init__.py @@ -8,11 +8,11 @@ from .base import BaseDownloader def get_downloader(source_type: str) -> Optional[BaseDownloader]: """소스 타입에 맞는 다운로더 인스턴스 반환""" - if source_type in ('youtube', 'general'): + if source_type in ('youtube', 'general', 'linkkf'): from .ytdlp_aria2 import YtdlpAria2Downloader return YtdlpAria2Downloader() - elif source_type in ('ani24', 'linkkf', 'hls'): + elif source_type in ('ani24', 'hls'): from .ffmpeg_hls import FfmpegHlsDownloader return FfmpegHlsDownloader() diff --git a/downloader/ytdlp_aria2.py b/downloader/ytdlp_aria2.py index 3943040..60e2a9b 100644 --- a/downloader/ytdlp_aria2.py +++ b/downloader/ytdlp_aria2.py @@ -98,6 +98,11 @@ class YtdlpAria2Downloader(BaseDownloader): # 프록시 if options.get('proxy'): cmd.extend(['--proxy', options['proxy']]) + + # HTTP 헤더 추가 (Referer 등 - Linkkf 등 리다이렉트 방지용) + if options.get('headers'): + for key, value in options['headers'].items(): + cmd.extend(['--add-header', f'{key}:{value}']) # FFmpeg 경로 자동 감지 및 설정 ffmpeg_path = options.get('ffmpeg_path') or P.ModelSetting.get('ffmpeg_path') diff --git a/info.yaml b/info.yaml index 917e02d..5bef71f 100644 --- a/info.yaml +++ b/info.yaml @@ -1,6 +1,6 @@ title: "GDM" package_name: gommi_downloader_manager -version: '0.2.16' +version: '0.2.18' description: FlaskFarm 범용 다운로더 큐 - YouTube, 애니24, 링크애니, Anilife 지원 developer: projectdx home: https://gitea.yommi.duckdns.org/projectdx/gommi_downloader_manager