Skip to content

Instantly share code, notes, and snippets.

@fakhamatia
Last active April 27, 2025 12:29
Show Gist options
  • Save fakhamatia/12f5353a06683a57d7741e1e772157f9 to your computer and use it in GitHub Desktop.
Save fakhamatia/12f5353a06683a57d7741e1e772157f9 to your computer and use it in GitHub Desktop.
دانلود از یوتیوب با yt-dlp

از این لینک نسخه مناسب سیستم عامل رو دانلود کنید.

برای پیش‌نیاز، ما پکیج FFmpeg رو لازم داریم.

برای احراز هویت گوگل هم مرورگر فایرفاکس رو لازم داریم که اگر ندارید نصب کنید.

بعد از دانلود yt-dlp اون رو باید توسط ترمینال به شکل زیر اجرا کنید:

./yt-dlp https://www.youtube.com/watch?v=tv8k4MF9bog

ولی چون گوگل خیلی روی این موضوع بات حساس هست نیاز به احراز هویت با یک اکانت جیمیل و کوکی معتبر دارید.

می‌شه کوکی رو استخراج کرد ولی یکم پیچیدگی داره و بهترین راه دسترسی دادن به مرورگره، مرورگر کروم هم محدودیت داره و بهترین مرورگر فایرفاکس هست.

فایرفاکس رو باز کنید، وارد یوتیوب بشید و بعد با یک جیمیل وارد بشید. بهتره جیمیل اصلی‌تون نباشه چون ممکنه یهو گوگل جیمیل رو ببنده پس یک جیمیل دامی بسازید.

بعد از وارد شدن مرورگر رو ببندید و این فلگ رو به دستور قبلی اضافه کنید:

./yt-dlp https://www.youtube.com/watch?v=tv8k4MF9bog --cookies-from-browser firefox

الان باید بدون محدودیت دانلود انجام بشه، فقط حواستون باشه هر چند وقت یکبار یوتیوب رو داخل فایرفاکس باز کنید تا کوکی ها جدید بشن.

این پکیج قوی بسیار زیاد فلگ و آپشن های مختلف داره که بعضی از کاربردی هارو پایین توضیح می‌دم و می‌تونید اونارو به صورت ترکیبی استفاده کنید.


این فلگ پکیج دانلودر به آخرین نسخه آپدیت می‌کنه، این کار مهمه چون قوانین گوگل مدام در حال تغییره.

./yt-dlp -U

این فلگ بهترین صدا و تصویر رو دانلود می‌کنه و باهم ادغام می‌کنه. شما می‌تونید کیفیت صدا و تصویر برای دانلود انتخاب کنید و یا حتی فقط صدا یا تصویر رو دانلود کنید، برای این کار دیگه داکیومنت رو مطالعه کنید چون خیلی حالت مختلف زیاد داره.

./yt-dlp -f "bv*+ba/b"

تنظیم سرعت دانلود برای اشغال نکردن کل پهنای باند

./yt-dlp --limit-rate 200K

دانلود کردن زیرنویس انگلیسی و فارسی

./yt-dlp --write-subs --write-auto-subs --sub-langs "en,en.fa,en.en,fa"

بعضی وقتها ممکنه اسم فایل دانلود کاراکتر غیر مجاز داشته باشه و مشکل ساز بشه، با این فلگ این مشکل حل می‌شه.

./yt-dlp --windows-filenames

این فلگ عکس تامنیل ویدیو رو هم دانلود می‌کنه که وقتی چندتا ویدیو دانلود می‌کنید مشخص بشه کدوم به کدوم

./yt-dlp --write-thumbnail

اگر می‌خواید چندین ویدیو دانلود کنید بهتره یک فایل متنی درست کنید و لینک هارو خط به خط وارد کنید تا به ترتیب دانلود کنه.

./yt-dlp -a urls.txt

با این فلگ وقتی ویدیو کامل دانلود می‌شه لینکش رو داخل یک فایل ذخیره می‌کنه، تا اگر شما دانلود رو قطع کردید یا حالا به هر دلیلی قطع شد و خواستید از اول دانلود رو شروع کنید ویدیو های تکراری دانلود شده رو رد می‌کنه.

البته اگر وسط دانلود قطع بشه دفعه بعد ادامه رو دانلود میکنه.

./yt-dlp --download-archive archive.txt

اگر شما می‌خواید تمام ویدیو های یک چنل یا لیست رو دانلود کنید این فلگ به درد می‌خوره، بجای لینک ویدیو لینک چنل یا لیست رو ارایه کنید و همه ویدیو های داخلش رو به ترتیب آپلود شدن دانلود می‌کنه.

./yt-dlp --yes-playlist

حالت عادی اسم فایل فقط شامل تایتل داخل سایت هست، با این فلگ می‌تونید اسم رو دستکاری کنید، من مثلاً اسم چنل رو هم بهش اضافه کردم.

./yt-dlp --output "%(uploader)s - %(title)s.%(ext)s"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment