Add curl-cffi dependency and update README for browser impersonation support. Enhanced configuration options for yt-dlp to include impersonation settings, improving compatibility with anti-bot measures. Updated logging in main.py to reflect new impersonation settings.

This commit is contained in:
Leonid Pershin
2026-06-21 10:58:14 +03:00
parent eae4def0bf
commit ea906bbf0e
6 changed files with 155 additions and 2 deletions
+6
View File
@@ -348,6 +348,12 @@ class YtDlpDownloader(Downloader):
"noplaylist": True,
**_ytdlp_cookie_opts(settings.cookies_from_browser, settings.cookies_file),
}
if settings.impersonate:
# Глобально: браузерный отпечаток на ВСЕ запросы (страница + медиа),
# иначе CDN рвёт скачивание видео-данных.
from yt_dlp.networking.impersonate import ImpersonateTarget
base_opts["impersonate"] = ImpersonateTarget.from_str(settings.impersonate)
default_tmpl = str(self._dir / "%(title)s [%(id)s].%(ext)s")
# Фаза 1: узнаём имя файла, не качая, чтобы развести дубли как браузер.