یکی از آرزوهای من این بود که بشه کل کلیپهای یک کاربر در یوتیوب رو به صورت یکجا دانلود کرد :)
و خب چه چیزی بهتر از ترمینال برای تحقق این آرزو؟
یکی از برنامههای خوب بیبیسی فارسی، برنامه کلیک که تمام برنامههای اون رو میشه از طریق یوتیوب نیز مشاهده نمود.
حالا خیلی ساده میخوایم کل برنامههای کلیک فارسی موجود در این کانال رو روی کامپیوتر ذخیره کنیم ;)
روش کار اینه که وارد کانال فرد مورد نظر میشید. و صفحه فرد مورد نظر رو توسط مرورگر ذخیره میکنید. که در مثال مورد نظر ما فایلی به اسم clickfarsi.html رو خواهیم داشت.
و حالا نوبت بیرون کشیدن لینکهای موجود در این فایله .
برای اینکار به ترمینال سر میزنیم و دستور زیر رو وارد می کنیم.
grep -E ‘http://www.youtube.com/watch\?v=[[:alnum:]-]{11}’ clickfarsi.html -o | uniq > click.txt
خروجی این دستور فایلیه به اسم click.txt . با کمک دستورgrep -E در دستور بالا لینکهای موجود از فایل clickfarsi.html بیرون کشیده میشه :)
حالا فایلی داریم به اسم click.txt که لینک همه کلیپها به صورت مرتب درونش ذخیره شده .
حالا برنامه youtube-dl رو باید نصب کنید.
با زدن دستور زیر برنامه شروع به دانلود تک تک لینکهای موجود در این فایل می کنه ;)
for i in cat click.txt
; do youtube-dl -t $i; done; rm click.txt;
بعد از ذخیره همه کلیپها، فایل click.txt به صورت خودکار پاک خواهد شد.