Skip to content

Commit 30f09c9

Browse files
committed
feat(cookies): add cookie support for yt-dlp (YouTube auth) closes #41
Add CookiesFromBrowser and CookiesFile config options. CookiesFromBrowser (e.g. 'firefox') reads fresh cookies each run. CookiesFile points to a Netscape cookies.txt (less reliable).
1 parent 37dfc82 commit 30f09c9

2 files changed

Lines changed: 12 additions & 0 deletions

File tree

Config/Config.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ class Config
3131
public static bool isUseGalleryDl = false;
3232
public static string accessDeniedMessageContact = " ";
3333

34+
// Cookie Configuration
35+
public static string? cookiesFromBrowser; // e.g. "firefox", "chrome" — reads fresh cookies each time
36+
public static string? cookiesFile; // path to Netscape cookies.txt file
37+
3438
// Proxy Configuration
3539
// Proxy for media downloads (yt-dlp/gallery-dl). Supports HTTP/SOCKS5.
3640
public static string proxy = "";
@@ -92,6 +96,9 @@ public static void LoadConfig()
9296
accessDeniedMessageContact = configuration.GetValue("AppSettings:AccessDeniedMessageContact", " ");
9397
maxConcurrentDownloads = configuration.GetValue("AppSettings:MaxConcurrentDownloads", 3);
9498

99+
cookiesFromBrowser = configuration["AppSettings:CookiesFromBrowser"];
100+
cookiesFile = configuration["AppSettings:CookiesFile"];
101+
95102
videoGetDelay = configuration.GetValue("MessageDelaySettings:VideoGetDelay", 1000);
96103
contactSendDelay = configuration.GetValue("MessageDelaySettings:ContactSendDelay", 1000);
97104

TelegramBot/MediaGet.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,11 @@ public class MediaGet
6565
if (!string.IsNullOrEmpty(effectiveProxy))
6666
overrideOptions.Proxy = effectiveProxy;
6767

68+
if (!string.IsNullOrEmpty(Config.cookiesFromBrowser))
69+
overrideOptions.CookiesFromBrowser = Config.cookiesFromBrowser;
70+
if (!string.IsNullOrEmpty(Config.cookiesFile))
71+
overrideOptions.Cookies = Config.cookiesFile;
72+
6873
DateTime lastProgressUpdate = DateTime.MinValue;
6974
var progress = new Progress<DownloadProgress>(p =>
7075
{

0 commit comments

Comments
 (0)